`

struts2 param

 
阅读更多
在struts.xml配置文件中遇到了param,有点迷糊,上网查了查……似乎明白些了
<action name="Log*" method="loginFrame{1}" class="member.loginIndeAct">
   <result>${tplPath}</result>
   <result name="logout" type="redirectAction">
    <param name="namespace">/jeecms</param>
    <param name="actionName">LoginFrameInput</param>
   </result>
  </action>
这里的action 是Log,他包含了登陆和退出,当系统在登录的时候就直接返回${tplPath}就可以了;在退出的时候需要返回到登陆页面,所以退出的时候是转发到 action的,转发到action肯定要告诉系统转发到那个action,该action的namespace是什么,名字是什么,就是通过param 该属性老告知struts2的;当然param还有其他用法,不过一般就用这个就差不多了,综上得出:
param标签主要用于为其他标签提供参数,例如bean和include标签。
param参数设置:
name:可选属性,指定设置参数名称
value:可选属性,指定参数的值
id:可选属性,指定该元素引用id
看到这,野猪似乎感觉清楚了许多,嘿嘿……
下面还搜到了一些信息,等野猪不是很清楚的时候再看看吧……
chain      
    用来处理Action链,被跳转的action中仍能获取上个页面的值,如request信息。      
    com.opensymphony.xwork2.ActionChainResult      
dispatcher      
    用来转向页面,通常处理JSP      
    org.apache.struts2.dispatcher.ServletDispatcherResult      
freemaker      
    处理FreeMarker模板      
    org.apache.struts2.views.freemarker.FreemarkerResult      
httpheader      
    控制特殊HTTP行为的结果类型      
    org.apache.struts2.dispatcher.HttpHeaderResult   
stream      
    向浏览器发送InputSream对象,通常用来处理文件下载,还可用于返回AJAX数据      
    org.apache.struts2.dispatcher.StreamResult      
velocity      
    处理Velocity模板      
    org.apache.struts2.dispatcher.VelocityResult      
xslt      
    处理XML/XLST模板      
    org.apache.struts2.views.xslt.XSLTResult      
plainText      
    显示原始文件内容,例如文件源代码      
    org.apache.struts2.dispatcher.PlainTextResult      
plaintext      
    显示原始文件内容,例如文件源代码      
    org.apache.struts2.dispatcher.PlainTextResult
redirect    
    重定向到一个URL ,被跳转的页面中丢失传递的信息,如request     
    org.apache.struts2.dispatcher.ServletRedirectResult      
redirectAction      
    重定向到一个Action ,跳转的页面中丢失传递的信息,如request        
    org.apache.struts2.dispatcher.ServletActionRedirectResult      
redirect-action      
    重定向到一个Action ,跳转的页面中丢失传递的信息,如request        
    org.apache.struts2.dispatcher.ServletActionRedirectResult   
注:redirect与redirect-action区别
一、使用redirect需要后缀名 使用redirect-action不需要后缀名
二、type="redirect" 的值可以转到其它命名空间下的action,而redirect-action只能转到同一命名空下的 action,因此它可以省略.action的后缀直接写action的名称。
如:
<result name="success" type="redirect">viewTask.action</result>
<result name="success" type="redirect-action">viewTask</result>
附:redirect-action 传递参数

<action name="enterpreinfo" class="preinfoBusinessAction"    method="enterPreinfoSub"> 
  <result name="success" type="redirect-action"> 
     showpreinfo?preinfo.order_number=${preinfo.order_number}&amp;preinfo.company_name=${preinfo.company_name}  
  </result> 
<result name="error" type="redirect"> 
    <param name="location">/error.jsp</param> 
</result> 
</action> 
   因为使用了redirect-action,所以要注意不能将 showpreinf?preinfo.order_number=${preinfo.order_number}写成 showpreinf.action?preinfo.order_number=${preinfo.order_number}
其中${}为EL表达式,获取action:enterpreinfo中属性的值;在这个配置文件里,多个参数的连接符使用了"&amp;",但XML的语法规范,应该使用"&amp;"代替"&",原理和HTML中的转义相同,开始没有注意,在struts分析配置文件时,总是报出这样的错误:
json   一般很容易忽略的一个地方(在EXT中非常有用)
示例
view plaincopy to clipboardprint?
<package name="struts2" extends="json-default" namespace="/"> 
        <action name="login" class="loginAction" method="login"> 
            <result type="json"> 
                <param name="includeProperties">success,result</param>               
            </result>              
        </action> 
        <action name="main" class="loginAction" method="main"> 
            <result name="main">/index.jsp</result>          
        </action>  
    </package> 

view plaincopy to clipboardprint?
private boolean success  = true; 
private String result = "main.action"; 
//getter和setter方法略 
 
以上的success和result互相对应到了
view plaincopy to clipboardprint?
<param name="includeProperties">success,result</param>   

struts2会根据其设置的值匹配跳转
对于json一般情况下很少用到,但是在处理ext的时候会用到这个属性类型,这个地方也是经常被忽略的
分享到:
评论

相关推荐

    struts2 Https 配置

    Struts2是一个非常流行的Java Web框架,用于构建和维护可扩展、模块化且易于管理的企业级应用程序。在当今网络安全日益重要的环境下,使用HTTPS协议来确保数据传输的安全性变得至关重要。Struts2支持HTTPS配置,可以...

    struts2+json

    Struts2是一个强大的Java web开发框架,它极大地简化了基于MVC(模型-视图-控制器)架构的应用程序开发。这个资源"struts2+json"显然涉及到在Struts2框架下实现JSON(JavaScript Object Notation)数据交换,这是一...

    在Eclipse中配置Struts2项目(html)手把手教会你 +struts2 标签库介绍(html) + STRUTS2学习文档.pdf + Struts2―表单验证validate(html) + struts2和struts的比较 + struts教程(html)

    在Eclipse中配置Struts2...Struts2―表单验证validate(html)对validate的type属性校验类型以及param 做了详细的解释说明。 struts2和struts的比较 让你更清楚的知道struts2和struts的不同之处。 struts教程(html)

    struts2配置过滤器

    ### Struts2配置过滤器详解 #### 一、概述 Struts2是基于MVC模式的一个开源框架,它能够帮助开发者构建出结构清晰且易于维护的Web应用。在实际开发过程中,为了实现某些功能(例如用户认证、权限控制等),往往...

    Struts2输入校验总结

    ### Struts2输入校验深度解析 #### 一、手动输入完成校验 在Struts2框架中,输入校验是确保数据完整性和安全性的重要环节。对于手动输入完成校验,Struts2提供了灵活的机制。 1. **普通处理方式**:在Action类中...

    struts2增删改查,struts2分页查询

    在探讨Struts2框架下的增删改查以及分页查询功能时,我们首先需要理解Struts2框架本身。Struts2是Apache软件基金会的一个开源Web应用框架,它继承了Struts1的一些特性,并在此基础上进行了大量的改进和扩展,提供了...

    Struts2之struts2文件下载详解案例struts012

    Struts2是一个强大的Java web应用程序框架,它提供了一种组织和构建MVC(模型-视图-控制器)架构的方式。在Struts2中处理文件下载是常见的需求,比如用户请求下载服务器上的文件,如PDF、图片或其他类型的文档。本...

    我的struts2的总结

    根据提供的文件信息,我们可以整理出关于Struts2框架的一些关键知识点。尽管原文中的信息较为零散且不完整,但还是可以从中提炼出一些有价值的内容。接下来,我们将详细探讨这些知识点。 ### Struts2简介 Struts2...

    struts2 向结果传参数

    Struts2是一个流行的Java web框架,它为开发者提供了一种优雅的方式来构建动态、结构良好的Web应用程序。在Struts2中,结果(Result)是动作(Action)执行后跳转的目标,它可以是一个JSP、Servlet或其他资源。有时...

    dwr与struts2

    &lt;param name="class" value="org.apache.struts2.validators.DWRValidator"/&gt; &lt;convert converter="bean" match="com.opensymphony.xwork2.ValidationAwareSupport"/&gt; &lt;!-- 其他配置项 --&gt; ``` ### 总结 ...

    struts2图片上传并预览

    Struts2是一个强大的Java web应用程序框架,用于构建和部署可维护、高性能的MVC(Model-View-Controller)架构的应用程序。在Web开发中,图片上传和预览是常见的功能需求,尤其对于用户交互丰富的应用来说。Struts2...

    struts2 fielderror去掉样式

    Struts2是一个非常流行的Java Web框架,用于构建可维护、可扩展且结构良好的MVC(模型-视图-控制器)应用程序。在Struts2中,`FieldError`是用来表示表单验证失败时的错误信息。当用户输入的数据不符合预定义的验证...

    struts2demo全注解

    其次,Struts2提供了`@Params`或`@Param`注解来封装请求参数到Map中。这样,我们可以避免手动从`HttpServletRequest`中获取参数。例如: ```java @Action(value = "getUser") public String getUser(@Param("id") ...

    struts2 action跳转action传参数

    - `&lt;param name="param1"&gt;${param1}&lt;/param&gt;` 和 `&lt;param name="param2"&gt;${param2}&lt;/param&gt;`:这两个参数将在action2中被设置。 - **注意事项**: - `param1`和`param2`需要在action1中定义对应的getter和setter...

    struts2版本 2.1.6 必须的jar包 和 web.xml 文件的修改

    &lt;param-value&gt;org.apache.struts2.spring.StrutsSpringObjectFactory&lt;/param-value&gt; &lt;/context-param&gt; ``` 3. **Struts2插件配置** - 如果使用了特定插件,如JSON或FreeMarker,可以在`&lt;struts&gt;`标签内添加相应...

    Struts2与JSON

    Struts2是一个强大的MVC(模型-视图-控制器)框架,它在Java Web开发中广泛应用,用于构建可维护性和可扩展性高的企业级应用程序。而JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它使得客户端和...

    Jquery与struts2

    **jQuery与Struts2整合详解** 在Web开发中,jQuery是一个强大的JavaScript库,它极大地简化了JavaScript的使用,使得前端交互更加便捷高效。而Struts2作为一款成熟的MVC框架,广泛应用于Java后端开发,提供了强大的...

    Struts2文件流方式导出下载excel、Txt、image图片

    Struts2是一个强大的MVC(模型-视图-控制器)框架,广泛应用于Java Web开发中。在实际项目中,我们经常需要提供文件下载功能,比如导出Excel表格、文本文件或者图片。Struts2提供了文件流的方式来实现这一需求,这种...

    struts2标签库例子

    例如:&lt;s:append id="myAppendIterator"&gt; &lt;s:param value="%{myList1}" /&gt; &lt;s:param value="%{myList2}" /&gt; &lt;s:param value="%{myList3}" /&gt;&lt;/s:append&gt;&lt;s:iterator value="%{#myAppendIterator}"&gt; &lt;s:property /&gt;&lt;/...

    struts2面试题

    ### Struts2 面试知识点详解 #### Struts2框架概述 1. **Struts2与Servlet API的关系**:Struts2是一个基于Servlet API构建的MVC框架,它为Web应用程序提供了一种灵活的方式来组织代码。Struts2通过封装Servlet ...

Global site tag (gtag.js) - Google Analytics