一、JSP向Servlet传值

JSP向Servlet传值的方式有三种:URL后面跟参数、form表单提交、在JSP内置对象Session设置值。

  • URL后面跟参数

    JSP文件:<a href="Receive?name=xiaoijing&password=123456">click me</a>

    Servlet文件:String name=request.getParameter("name");

    说明:href="Receive?name=xiaoijing&password=123456",Receive为请求的目的地(URL),"?"后面跟参数,name为参数名,xiaojing为参数值,多个参数用"&"隔开,在servlet中是通过request.getParameter("参数名")获取的,注意request.getParameter("参数名")获取的所有值都是字符串。

  • form表单提交

    JSP文件:         

<form action="Send" method="post">
    <input type="text" name="account" />
    <input type="submit" value="提交"/>
</form>

    Servlet文件:String account=request.getParameter("account");

     说明:<form action="Send" method="post">:action后面跟请求的目的地(URL),method请求方法常用的有get和post。<input type="text" name="account" />:传递的参数必须有name的属性,不然在servlet找不到该参数。

  • 在JSP内置对象Session设置值

    JSP文件:         

<%
  session.setAttribute("school", "dgut");
  request.setAttribute("name", "xiao");  //servlet无法获取该参数
%>

    Servlet文件:

        String school=(String) request.getSession().getAttribute("school");  

    说明:servlet只能接受到到session.setAttribute("school", "dgut")传来的值,无法接收到request.setAttribute("name", "xiao")传来的值,在servlet通过 request.getSession().getAttribute("school")获取参数值。

二、Servlet向JSP传值

servlet向JSP传值有两种方法:重定向和URL转发。

  • 重定向:

    servlet文件:     

response.sendRedirect("https://www.baidu.com");//重定向到web应用外部
response.sendRedirect("Receive");//重定向到web应用内部,URL前面没有“/”,默认在应用根目录下面
response.sendRedirect("/Monitor/Receive");//重定向到web应用内部,URL以根开头的,前面必须以应用开始

     说明:重定向是路径的跳转,重定向完成后,浏览器会重新发起新的请求,上一次的参数无法转发。

  • URL转发

     servlet文件:

String url="/JspGetServlet.jsp";//URL必须以“/”开头
//ServletContext sc=getServletContext();
//RequestDispatcher requestDispatcher=sc.getRequestDispatcher(url); //通过ServletContext 获取转发器
RequestDispatcher requestDispatcher=request.getRequestDispatcher(url);//通过request获取转发器
requestDispatcher.forward(request, response);

     JSP文件:   

<%=request.getParameter("account") %>   //通过内置对象request获取
${param.account}   //通过EL表达式获取

Servlet与JSP之间相互传值问题的更多相关文章

  1. 【jsp】Servlet与jsp之间的传值

    Servlet与JSP 之间的传值有两种情况:JSP -> Servlet, Servlet -> JSP. 通过对象 request和 session (不考虑 application) ...

  2. Servlet与jsp间的传值问题

    Servlet与JSP 之间的传值有两种情况:JSP -> Servlet, Servlet -> JSP.通过对象 request和 session (不考虑 application)完 ...

  3. Angular获取dom元素,以及父子组建之间相互传值

    1.使用原生js代码获取dom元素 在ts文件中有一个ngOnInit()的方法,这个方式是指在模块加载完毕之后并不是dom加载完毕,也就是说如果你的dom元素中使用的angular的指令,然后想在这 ...

  4. VUE中的子父组件、兄弟组件之间相互传值,相互调用彼此的方法

    vue--组件传值 父组件传值给子组件--"props" 一.父组件--示例 <template> <child :choose-data="choos ...

  5. struts action和jsp之间的传值

    一.jsp对Action传值 提交表单即可,Action的属性必须和表单的标签名字相同 二.Action对jsp传值: (1)利用session,(个人推荐) action中ActionContext ...

  6. Visual Studio 中两个窗体(WinForm)之间相互传值的方法

    编写WinowsForm应用程序时,实现两个窗体之间相互传递值的方法其实很简单.以下用一个例子说明:在名为FormMain主窗体运行过程中利用名为FormInfo窗体,获取用户输入信息,并将这些信息返 ...

  7. 关于servlet与jsp&java类传值问题

    为了实现单击左侧导航栏,动态改变右侧(一个jsp文件)的内容,需要改变变量var的值,进而实现改变default部分内容的目的(自己想的方法,因为实在是layman.应该有简便快捷的方法,可我不知道. ...

  8. servlet及jsp之间的请求转发

    1.servlet间的请求转发 <dependencies> <dependency> <groupId>javax.servlet</groupId> ...

  9. jsp之间url传值出现中文乱码

    示例: T1.jsp http://localhost:8080/test/Test.action?site=北京 T2.jsp ..... <%@ page language="ja ...

随机推荐

  1. 企业bi解决方案,商业智能BI作用

    ​随着越来越多的公司将商业智能BI引入到日常运营和商业决策中,BI的热点逐渐起来了.商业智能系统兴起,那BI对企业有什么好处呢? 简单的说,就是可以帮助企业管理者直观清晰的看到自己想要关注的数据,帮助 ...

  2. Win10搭建web服务实现文件共享

    配置Internet Information Services服务,实现文件共享. 1.打开控制面板,启用IIS服务. 启用IIS服务,系统会自动搜索并安装IIS服务. 2.管理web服务 此时在浏览 ...

  3. [iptables] 基于iptables实现的跨网络通信

    描述 在很多业务场景下,会遇上很多诡异的需求,不仅限于文章提及的需求,还有各种五花八门的需求,大部份的这些需求的产生都是来源于以前设计.规划上导致的问题.所以我们都会想尽办法为客户解决问题,维护好客户 ...

  4. shell脚本读取命令行的参数

    转至:https://www.cnblogs.com/eternityz/p/13879836.html 前提 在编写shell程序时经常需要处理命令行参数 选项与参数: 如下命令行: ./test. ...

  5. 1.java连接pulsar服务

    目录 是什么 安装 Java客户端 1.引入GAV 2.创建配置项 3.验证测试 其他及代码下载 是什么 Pulsar 是一个用于服务器到服务器的消息系统,具有多租户.高性能等优势.详见 安装 本文主 ...

  6. javascript订阅模式浅析和基础实例

    前言 最近在开发redux或者vux的时候,状态管理当中的createStore,以及我们在组件中调用的dispatch传递消息给状态管理中心,去处理一些操作的时候,有些类似我们常见到订阅模式 于是写 ...

  7. ASP.NET CORE 项目搭建(2022 年 3 月版)

    ASP.NET CORE 项目搭建(2022 年 3 月版) 自读 沉淀了多年的技术积累,在 .NET FRAMEWORK 的框架下尝试造过自己的轮子. 摸索着闭门造过 基于 OWIN 服务后端. 摸 ...

  8. Linux环境下安装配置JDK1.8

    最近在搞虚拟机,记录下虚拟机内java环境的搭建流程 一.下载合适版本的jdk 此处选择JDK1.8,各位同学可以根据自己的需求选择对应的版本,下载地址为: https://www.oracle.co ...

  9. maven——使用阿里云镜像

    1.在本地的仓库目录下找到settings.xml文件,添加 <mirrors> <mirror> <id>alimaven</id> <name ...

  10. Oracle 11g中查询CPU占有率高的SQL

    oracle版本:oracle11g 背景:今天在Linux中的oracle服务上,运用top命令发现许多进程的CPU占有率是100%. 操作步骤: 以进程PID:7851为例 执行以下语句: 方法一 ...