Servlet与JSP之间相互传值问题
一、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之间相互传值问题的更多相关文章
- 【jsp】Servlet与jsp之间的传值
Servlet与JSP 之间的传值有两种情况:JSP -> Servlet, Servlet -> JSP. 通过对象 request和 session (不考虑 application) ...
- Servlet与jsp间的传值问题
Servlet与JSP 之间的传值有两种情况:JSP -> Servlet, Servlet -> JSP.通过对象 request和 session (不考虑 application)完 ...
- Angular获取dom元素,以及父子组建之间相互传值
1.使用原生js代码获取dom元素 在ts文件中有一个ngOnInit()的方法,这个方式是指在模块加载完毕之后并不是dom加载完毕,也就是说如果你的dom元素中使用的angular的指令,然后想在这 ...
- VUE中的子父组件、兄弟组件之间相互传值,相互调用彼此的方法
vue--组件传值 父组件传值给子组件--"props" 一.父组件--示例 <template> <child :choose-data="choos ...
- struts action和jsp之间的传值
一.jsp对Action传值 提交表单即可,Action的属性必须和表单的标签名字相同 二.Action对jsp传值: (1)利用session,(个人推荐) action中ActionContext ...
- Visual Studio 中两个窗体(WinForm)之间相互传值的方法
编写WinowsForm应用程序时,实现两个窗体之间相互传递值的方法其实很简单.以下用一个例子说明:在名为FormMain主窗体运行过程中利用名为FormInfo窗体,获取用户输入信息,并将这些信息返 ...
- 关于servlet与jsp&java类传值问题
为了实现单击左侧导航栏,动态改变右侧(一个jsp文件)的内容,需要改变变量var的值,进而实现改变default部分内容的目的(自己想的方法,因为实在是layman.应该有简便快捷的方法,可我不知道. ...
- servlet及jsp之间的请求转发
1.servlet间的请求转发 <dependencies> <dependency> <groupId>javax.servlet</groupId> ...
- jsp之间url传值出现中文乱码
示例: T1.jsp http://localhost:8080/test/Test.action?site=北京 T2.jsp ..... <%@ page language="ja ...
随机推荐
- windev中字符串分隔符的选择以及Contains使用技巧
字符串分隔符,理论上可以使用任意符号,但作为数据保存,建议只使用以下三种: 1.:分号 2.TAB制表符 3.CR换行符 主要有以下几个原因: 1.组织架构组件,获得的组织路径,使用TAB键分隔,TA ...
- 【C#反射】Type的用法
Type属性的应用 Type type = typeof(MyClass); Console.Write("$类型名:{ type.Name}"); Console.Write(& ...
- JDK安装及JAVA_HOME配置
1.用yum list搜索合适的JDK yum list java-1.8* 这里选用jdk1.8版本,在列表中找到java-1.8.0-openjdk.x86_64. 2.用yum安装JDK yum ...
- AlertDialog的五种样式
建立DialogActivity.java文件: 1 public class DialogActivity extends AppCompatActivity { 2 private Button ...
- 进程&线程(二):Thread相关方法与属性
学习自:python进程.线程.协程 - 张岩林 - 博客园 1.threading.Thread Thread方法 方法(使用方法为Thread.xxx) 说明 start() 激活线程 getNa ...
- Python 中的深浅拷贝
Python 中的深浅拷贝 参考文献:https://blog.csdn.net/lnotime/article/details/81194633 参考文献:https://blog.csdn.net ...
- JAVA 异常和异常处理
目录 一.异常 1.基本概念 2.异常体系图 3.五大运行时异常 4.编译异常 二.异常处理 1.异常处理的方式 1.1try-catch异常处理 注意事项 课堂练习题 1.2throws异常处理 注 ...
- 『现学现忘』Docker相关概念 — 4、虚拟化概念
目录 1.虚拟化的概念 2.为什么出现虚拟化 3.虚拟化技术 1.虚拟化的概念 虚拟化是指通过虚拟化技术将计算机虚拟为多台逻辑计算机.在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操 ...
- 矩池云上使用Visdom可视化图像说明
租用机器添加默认端口 点击展开高级选项 点击添加端口配置 添加Visdom默认端口,选择 http 端口填入 8097 进入环境安装并使用 JupyterLab 链接 是本次实验用来安装实验的工具 H ...
- Laravel常用工具类
工具类函数 Geom转成字符串 如果项目中有大量的计算经纬度需求,强烈建议使用PgSql的geometry类型 public static function formatGeomToStr($geom ...