Chinaunix首页 | 论坛 | 博客
  • 博客访问: 86812
  • 博文数量: 56
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 730
  • 用 户 组: 普通用户
  • 注册时间: 2013-08-06 14:50
文章分类
文章存档

2013年(56)

我的朋友

分类: Java

2013-10-05 15:15:08

今天我们来看一下,Struts2配置RESULT中TYPE的参数说明:

    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的名称。
    如:
    viewTask.action
    viewTask
    附:redirect-action 传递参数
    showpreinfo?preinfo.order_number=${preinfo.order_number}&preinfo.company_name=${preinfo.company_name}
    /error.jsp
    因为使用了redirect-action,所以要注意不能将 showpreinf?preinfo.order_number=${preinfo.order_number}写成 showpreinf.action?preinfo.order_number=${preinfo.order_number}
    其中${}为EL表达式,获取action:enterpreinfo中属性的值;在这个配置文件里,多个参数的连接符使用了"&",但XML的语法规范,应该使用"&"代替"&",原理和HTML中的转义相同,开始没有注意,在struts分析配置文件时,总是报出这样的错误:
    json 一般很容易忽略的一个地方(在EXT中非常有用)示例view plaincopy to clipboardprint? success,result /index.jsp
    success,result
    /index.jsp
    view plaincopy to clipboardprint?private boolean success = true; private String result = "main.action"; //getter和setter方法略 private boolean success = true;
    private String result = "main.action";
    //getter和setter方法略
    以上的success和result互相对应到了view plaincopy to clipboardprint?success,result success,result struts2会根据其设置的值匹配跳转对于json一般情况下很少用到,但是在处理ext的时候会用到这个属性类型,这个地方也是经常被忽略的。
阅读(283) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~