JSP 中response.sendRedirect后面能传对象吗?如果能传,那怎么实现?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSP 中response.sendRedirect后面能传对象吗?如果能传,那怎么实现?相关的知识,希望对你有一定的参考价值。
可以传。String str="17";
response.sendRedirect("byNumber.jsp?sendsql="+str);
如果参数中含有中文,需要把传输的url以gb2312的形式打散,然后以ISO-8859-1的形式传输。
例如:String url ="byName.jsp?sendsql=小单";
url=new String(url.getBytes("gb2312"),"ISO-8859-1");
response.sendRedirect(url);
接收方式正好与传输方式相反,以ISO-8859-1打散,然后解析成gb2312
String str=new String(request.getParameter("sendsql").getBytes("ISO-8859-1"),"gb2312");追问
谢谢你们的回答与支持,但是我后面想传入的是对象啊!传入单值已经搞定
参考技术A 你可以用request.getRequestDispatcher("xxx.jsp").forward(request, response); 跳转,并且跳转之前用request.setAttribute(String name, Object o);把对象放入request中即可。struts2的返回类型struts的标签库struts2中完成国际化
struts2的返回类型:
在jsp-servlet中, 返回的类型主要有 转发, 重定向;
转发主要是RequestDispatcher的forward方法来进行操作的
req.getRequestDispatcher("goods/queryGoodFenYe.jsp").forward(req, resp);
重定向主要使用response对象的一些方法来操作:
1、response.sendRedirect("index.jsp");
2、response.addHeader("refresh", "0;url=index.jsp");
3、通过js的location.href=‘index.jsp‘;
在struts页面的跳转主要通过返回类型来操纵;
转发: <result name="queryUser">/query.jsp</result>
<result name="queryUser" type="dispatcher">/query.jsp</result>
重定向:
<result name="queryUser" type="redirect">/query.jsp</result>
struts的标签库:
JSTL 标签库一共有五个: core、functions、format、xml、sql共五个;
struts1标签库有5个: bean、logic、html、tiles、nested共5个;
struts2标签库只有1个; /struts-tags
非UI标签:
1、if、elseif、 else三个标签;
<s:if test="#x.money>5000">非常有钱</s:if>
<s:elseif test="#x.money>2000">相对有钱</s:elseif>
<s:elseif test="#x.money>100">有钱</s:elseif>
<s:elseif test="#x.money>10">穷人</s:elseif>
<s:else>没钱</s:else>
2、iterator 集合迭代器(注意#后面的作用域,有五个值)
<s:iterator var="x" value="#request.userList">
<s:iterator var="x" value="#attr.userList">
3、i18n 加载资源文件中的数据; name是指向资源文件的文件名; s:text标签中的name是文件中的key;
<s:i18n name="message">
<s:text name="bwf.jsp.query.name"></s:text>
</s:i18n>
4、 text标签 : 完成国际化;
<s:text name="bwf.jsp.query.name"></s:text>
5、include 标签, 动态包含
<s:include value="index.jsp"></s:include>
6、set标签: 赋值
<s:set id="xx" value="22"></s:set>
7、url地址
8、property 获取属性值; 可适用于国际化资源文件中。
UI标签:
1、 单行文本 textField
2、密码框 password
3、单选框 radio
4、下拉框 select
5、多行文本 textarea
6、form表单域
7、提交按钮 submit
8、复选框 checkbox
如何在struts2中完成国际化:
1、需在struts.xml文件中配置 constant标签;
<constant name="struts.custom.i18n.resources" value="message"></constant>
2、 在src下创建不同语言的资源文件;
3、jsp页面引用struts2的标签,可以使用property标签完成;
4、jsp页面引用struts2的标签,可以使用i18n标签完成;
5、jsp页面引用struts2的标签,可以使用text标签完成;
以上是关于JSP 中response.sendRedirect后面能传对象吗?如果能传,那怎么实现?的主要内容,如果未能解决你的问题,请参考以下文章