JSP传值给后台问题
在JSP里面有:<s:formaction="login"><s:submitkey="login"/><%request.setAttribute("username1...
在JSP里面有:
<s:form action="login">
<s:submit key="login"/>
<%request.setAttribute("username1", name);session.setAttribute("username2", name);%>
</s:form>
------------------------------------------------------------------------------------------------------------------
通过action传到LoginAction.java,
在LoginAction.java里面有:
ActionContext ctx = ActionContext.getContext();
String a=(String)ctx.get("username1");
String b=(String)ctx.getSession().get("username2");
-------------------------------------------------------------------------------------------------------------------
这样的a是为null,b有值。
为什么用session可以,用request就没法传递到后台。 展开
<s:form action="login">
<s:submit key="login"/>
<%request.setAttribute("username1", name);session.setAttribute("username2", name);%>
</s:form>
------------------------------------------------------------------------------------------------------------------
通过action传到LoginAction.java,
在LoginAction.java里面有:
ActionContext ctx = ActionContext.getContext();
String a=(String)ctx.get("username1");
String b=(String)ctx.getSession().get("username2");
-------------------------------------------------------------------------------------------------------------------
这样的a是为null,b有值。
为什么用session可以,用request就没法传递到后台。 展开
1个回答
展开全部
request不能这样拿数据,建议使用SessionAware和RequestAware来获取数据,这个你只有使用action实现这俩个类,然后必须定义属性:private Map<String, Object> session; private Map<String, Object> request;并且添加set和get方法,注意属性定义一定要是session名字和request名字,或者set方法必须后缀为session和request,这个在spring里面的自动注入查一下就会明白,然后通过session.get("username2"); request.get("username1");就可以拿到数据了
追问
不是很明白,谢谢
追答
你在网上搜一下SessionAware和RequestAware的使用就行了,使用起来很方便
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询