欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

页面传参

程序员文章站 2022-08-07 23:35:35
文章目录1.请求参数的方法2.传参的几种方式(1)表单(form)(2)forward动作+param子标记(3)include动作(4)追加在网址后传递3. 解决传递中文会乱码的问题4.关于getParameter()和getAttribute()的区别1.请求参数的方法访问请求参数使用request对象的 getParameter()方法,格式如下:String 变量名 = request.getParameter("参数的name属性名");2.传参的几种方式(1)表单(form)jsp...

一、request对象

1.请求参数的方法

访问请求参数使用request对象的 getParameter()方法,格式如下:

String 变量名 = request.getParameter("参数的name属性名");

2.传参的几种方式

(1)表单(form)

jsp→jsp

提交页面:

<form action="servlet页面名" method="post">
	用户名:<input type="text" name="username"><br>
	登录密码:<input type="text" name="password"><br>
	<input type="sunmit" value="提交">
</form>

接受页面:

<body>
	<% 
		String str1=request.getParameter("username");
		String str2=request.getParameter("password");
	%>
</body>

jsp→servlet

提交页面:

<form action="servlet页面名" method="post">
	用户名:<input type="text" name="username"><br>
	登录密码:<input type="text" name="password"><br>
	<input type="sunmit" value="提交">
</form>

servlet:

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    String str1=request.getParameter("username");
		String str2=request.getParameter("password");
}

(2)forward动作+param子标记

param标记不能独立使用,可以与<jsp:forward>一起使用,将param中的变量值传递给要跳转的文件。

jsp→jsp

传参数界面

<jsp:forward page = "接受参数文件的名字">
	<jsp:param name ="变量名字1" value ="变量值1"/>
</jsp:forward>

接受参数界面

<body>
	<% String str=request.getParameter("变量名");%>
</body>

(3)include动作

也可以与<jsp:include>一起使用,将param中的变量值传递给要动态加载的文件。

jsp→jsp

传参数界面

<jsp:include page = "接受参数文件的名字">
	<jsp:param name ="变量名字1" value ="变量值1"/>
</jsp:include>

接受参数界面

<body>
	<% String str=request.getParameter("变量名");%>
</body>

(4)追加在网址后传递

Http://ip地址:端口号//文件路径?变量名1=变量值1&变量名2=变量值2

注意所输入的信息之间不能有空格。
接收方式和上述方式相同,不再赘述。

3. 解决传递中文会乱码的问题

在方法getParameter()之前添加语句

request.setCHaracterEncoding("UTF-8");

同时表单属性action必须是post方法

4.关于getParameter()和getAttribute()的区别

getParameter方法可以接受来自不同的jsp页面或者jsp动作传递给request对象的参数信息。
而getAttribute()方法是获取通过setAttribute()方法根据自己的需要添加在resquest对象中的属性。

用法

void resquest.setAttribute("name",obj)
Object resquest.getSttribute(String name);

二、session对象

1.形成及保存会话属性的数据

会话属性的数据使用setAttribute()方法形成及保存,格式

session.setAttribute("属性名",属性值);

对于Servlet,需要先获取HttpSession的实例对象,然后再使用setAttribute()方法,格式

HttpSession request.getSession(boolea create);

2.获取会话属性数据

使用getAttribute()方法,格式:

对象类型 (强制类型转化)session.getAttribute("属性名");

3.删除会话属性数据

使用removAttribute()方法,格式;

session.removeAttribute("属性名");

三、application对象

1.形成及保存应用属性的数据

应用属性的数据使用setAttribute()方法形成及保存,格式

application.setAttribute("属性名",属性值);

对于Servlet,需要先获取ServletContext的实例对象,然后再使用setAttribute()方法,格式

ServletContext application=this.getServletContext()

2.获取应用属性数据

使用getAttribute()方法,格式:

对象类型 (强制类型转化)application.getAttribute("属性名");

3.删除应用属性数据

使用removAttribute()方法,格式;

application.removeAttribute("属性名");

本文地址:https://blog.csdn.net/SDAU_LGX/article/details/109261030