servlet传值到JSP

JSP传给servlet很容易FORM提交,<jsp:forward>及配套的<jsp:param>,<c:url> <c:redirect> <c:import>及与这些配套的<c:param>,好像很多

而html原生的<href>更是轻松


而反过来,servlet传值给JSP就比较受局限,目前确认只有两种:

1、url方式

response.sendDirect("url?num="+num);

这个就是传统的get传值,会在浏览器的地址栏看到num值。

另外,如果num中有中文,要考虑用URLEncoder编码才行。


2、session POST方式

Map<String,String> map = new LinkedHashMap<String,String>();
map.put("a","a;a;a;a;a;a;");
map.put("b","bbbb");
map.put("c","cccc");
map.put("1","11122222");
request.getSession().setAttribute("map",map);
/***注意上面这句,有的地方说用
//request.setAttribute("map",map); //中间少了getSession
//配合下面的 getRequestDispatcher().forward是可行的
//但是配合最后的 sendRedirect()不可行。
//所以,还是加上 getSession,两种都可行****/
//request.getRequestDispatcher("test1.jsp").forward(request, response);
response.sendRedirect("test1.jsp");
两种跳转方式都可以,任选一种即可,区别另网查。

在test1.jsp中,可以直接用request.getAttribute("map");

如果用EL,就更简单 ${map.a}, ${map["b"]} 都可行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值