`
师大黄飞
  • 浏览: 45095 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Struts2值传递问题

阅读更多

一,Struts2标签不支持EL表达式,应该用Ognl表达式,比如在<s:if>标签中

     

<s:if test="#msg==null">
          <span id="welcomeInfo" >欢迎使用XX后台管理系统!   </span>     </s:if>
<s:else>
          <span id="wrongInfo">${msg}</span>
</s:else>

 其中判断是用#msg==null来判断action中传递的参数msg是否为空

 

 

二,Action中如何将参数传递到jsp页面呢

 

ActionContext ac=ActionContext.getContext();
ac.put("msg", msg);

 上面就相当于

 

HttpServletRequest传值,其余还有

ac.getApplication.put("","");
ac.getSession.put("","");

 三,关于Struts2.xml文件中的Action的result中配置传递值

 

 <result name="success" type="redirect"> 
       <param name="location">/Login.jsp</param>
  </result>

以上就相当于

 <result name="success" type="redirect"> /Login.jsp</result>

 如何传递值呢

 <result name="success" type="redirect"> 
    <param name="location">/Login.jsp</param>
    <param name="msg" >${msg}</param>
  </result>

 用以上方法action中必须有

ActionContext ac=ActionContext.getContext();
ac.put("msg", msg);
不能使用
HttpServletRequest ac =ServletActionContext.getRequest();
ac.setAttribute("msg",msg );
否则接受不到参数

 以上是动态传至,你也可以讲${msg}替换为"要传递的内容"

 Jsp页面通过EL表达式获取

${param["msg"]}
等同于
<%=request.getParameter("msg")%>

 此时可能出现乱码

只要将tomcat中的confg/server.xml文件中的

<Connector  connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
添加编码URIEncoding="utf-8",如下
<Connector URIEncoding="utf-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

 若是在eclipse下还要重新添加tomcat服务器

分享到:
评论

相关推荐

    struts2 向结果传参数

    总的来说,Struts2提供了多种方式来向结果传递参数,这使得它在处理复杂的业务逻辑和页面跳转时具有高度的可定制性。根据项目的具体需求,选择合适的方法可以提高代码的可维护性和效率。在实践中,结合使用不同的...

    Struts2中的参数传递

    1. **封装OGNL操作,实现值的传递**:Struts2通过对OGNL表达式的封装,实现从客户端传入的参数到Java对象之间的值传递。这一过程包括但不限于对各种复杂类型的处理,如数组、列表、映射等。 2. **类型转换**:为了...

    Struts2值栈的理解

    Struts2 通过 ValueStack 对象来获取所有相关的值,如请求参数、Action 配置参数、向其他 Action 传递属性值(通过 chain 结果)等等。要获得这些参数值,我们要做的唯一一件事就是在 Action 类中声明与参数同名的...

    使用struts2 和ajax进行传递json数据

    Struts2和Ajax是两种在Web开发中广泛使用的技术,它们结合使用可以实现前后端的高效交互。在本场景中,我们将重点讨论如何利用Struts2作为后台处理框架,与前端Ajax通过JSON(JavaScript Object Notation)数据格式...

    struts2核心技术整理

    5. **Value Stack**:值栈是Struts2的一个重要概念,它是一个对象容器,存储Action实例和需要传递到视图的数据。视图可以直接通过OGNL(Object-Graph Navigation Language)表达式访问值栈中的对象。 二、OGNL...

    struts 2教程资料

    5. **Value Stack**:Struts 2使用值栈来传递数据,Action中的属性可以直接放入值栈,视图层可以直接访问这些属性。 6. **OGNL(Object-Graph Navigation Language)**:Struts 2默认使用OGNL作为表达式语言,用于...

    struts2支持方法上传递参数

    Struts2作为一款流行的Java Web框架,为开发者提供了丰富的功能,其中包括通过方法上传递参数的能力。这种方法使得在处理用户请求时更加灵活,不需要依赖特定的注解,而是直接通过参数名来获取界面传递的参数信息。...

    struts2完整例子

    6. **OGNL(Object-Graph Navigation Language)**:Struts2内部使用OGNL作为表达式语言,它允许在Action与视图之间传递数据,如在JSP中直接访问Action属性。例如,`${user.name}`可以获取UserAction中的name属性值...

    struts2标签使用例子

    Struts2是一个强大的MVC(模型-视图-控制器)框架,用于构建企业级Java Web应用程序。在Struts2框架中,标签库是其一大特色,它提供了丰富的自定义标签,使得开发者能够更加便捷地创建动态页面。这些标签极大地简化...

    struts2+JSP

    5. **值栈(Value Stack)**:Struts2使用值栈存储请求中的数据,简化视图层的数据访问。 **JSP技术的基本概念:** 1. **指令元素(Directives)**:如page、include、taglib,它们用于设置全局属性、包含其他页面...

    struts2完整压缩包

    4. **Value Stack**: 值栈是Struts2中一个重要的概念,它是一个存储对象的栈结构,用于在Action与视图之间传递数据。ActionContext是访问值栈的上下文对象,可以通过它将数据放入栈中供JSP或其他视图技术使用。 5. ...

    struts2 2.3.4最新版本

    在实际开发中,开发者还需要关注Struts2的安全问题,如Struts2 S2-045、S2-048等漏洞,及时更新到最新版本以防止安全风险。 总的来说,Struts2 2.3.4是一个包含源代码和运行库的版本,它提供了一个强大的MVC框架,...

    struts2四天的学习笔记

    6. **OGNL(Object-Graph Navigation Language)**:Struts2默认使用OGNL作为表达式语言,用于在Action与JSP视图之间传递数据。例如,`&lt;s:property value="username" /&gt;`会显示Action中username属性的值。 7. **...

    使用Struts 2框架开发租房网站

    Struts 2是一个强大的MVC(Model-View-Controller)框架,被广泛应用于Java Web应用程序的开发中。在北大青鸟Y2学年的课程中,学生们通常会学习如何利用Struts 2框架来构建一个租房网站,这涉及到多个关键知识点。 ...

    struts2API

    Struts2 API是Java开发中的一个关键工具,它为基于MVC(Model-View-Controller)设计...在实际开发中,查阅Struts2的查询文档,结合具体的文件名称列表,可以找到对应的API详细信息,帮助解决开发过程中遇到的问题。

    Struts2输入校验总结

    2. **异常处理与错误封装**:如果类型转换过程中遇到问题,如无法正确转换数据类型,会抛出异常。这些异常会被捕获并封装到`fieldError`对象中,存储在`ActionContext`中,以便后续的拦截器处理。 3. **反射调用...

    Struts2经典小例题

    在Action类中,可以创建一个getter方法来获取存储在session中的用户名,并通过Struts2的值栈(Value Stack)将其传递给JSP页面。在JSP页面上,我们可以使用OGNL(Object-Graph Navigation Language)表达式来访问并...

    struts2-core-2.0.12.jar

    OGNL是Struts2中的表达式语言,用于在视图和模型之间传递数据。它允许开发者直接访问对象属性,支持动态方法调用,使得视图层的绑定变得简单而强大。 **6. freemarker和JSP视图技术** Struts2支持多种视图技术,...

    struts2框架源码

    4. **Value Stack**:值栈是Struts2中用于传递数据的容器,它将Action实例、ActionForm对象和其他模型对象存储在一起,方便视图层访问。通过OGNL(Object-Graph Navigation Language)表达式,可以在视图层轻松地...

    struts2 最新jar包

    3. **ognl.jar**:Object-Graph Navigation Language(OGNL)是Struts2中的表达式语言,用于在Action和视图之间传递数据,以及在Action中设置和获取属性值。 4. **freemarker.jar**:FreeMarker是一个模板引擎,...

Global site tag (gtag.js) - Google Analytics