servlet参数传递及页面跳转

servlet参数传递及页面跳转

这里包括servlet接受参数、传递参数、参数乱码、页面乱码、页面跳转、用户信息保存至session等

一、接受参数

1、接收单个字符串

这里直接写解决乱码的接受方式
String name = new String(request.getParameter(“name”).getBytes(“ISO-8859-1”), “UTF-8”);

2、接受js传递过来的数组

String[] conducts=request.getParameterValues(“conducts”);
接受js的数组含有,,,,
可以用split函数分割

String[] conducts=request.getParameterValues("conducts");
		String[] strings = conducts[0].split(",,,,");
		for (String string : strings) {
			System.out.println("pic:"+string);
		}
		if("".equals(strings[1])){
			String[] s = new String[strings.length-1]; 
			for(int i=0;i<s.length;i++){
				s[i]=strings[i+1];
			}
			request.setAttribute("conducts", s);
		}else
			request.setAttribute("conducts", strings);

二、页面跳转、参数传递

1、不带参数的跳转

response.sendRedirect(“fail.html”);

2、带参数的跳转

request.setAttribute(“name”, name);
request.getRequestDispatcher(“query.jsp”).forward(request, response);

3、用js跳转

PrintWriter out = response.getWriter();
out.print("<script language='javascript'>window.location.href='query.jsp';</script>");

可以在js代码中添加弹窗
String a = URLEncoder.encode(“查询条件不能为空!”, “UTF-8”);
alert(decodeURIComponent(a));//这条语句写js中,注意稍微修改下“”

4、通过js代码跳转后页面乱码问题

response.setCharacterEncoding(“UTF-8”);
!!!注意 这条语句要加在PrintWriter out = response.getWriter();之前,输出流打开之后设置编码就无效了

三、用户信息保存至session

User user = new User();
user.setTel(phone);
user.setName(result);
user.setPass(mima);
HttpSession s = request.getSession(true);
s.setAttribute("user",user);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值