首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Struts2.0跟2.1的零配置的区别

2012-11-09 
Struts2.0和2.1的零配置的区别第一次写文章,写写我最近学的struts2的零配置吧~最大的区别就是Struts2.1.6

Struts2.0和2.1的零配置的区别

第一次写文章,写写我最近学的struts2的零配置吧~


最大的区别就是Struts2.1.6以后开始使用convention-plugin代替codebehind-plugin来实现struts的零配置,所以要额外引入struts2-convention-plugin-2.1.8.1.jar这个jar

?

?想起来还有一个不同,2.0要在web.xml中写一段配置,写2.1的时候我没在web.xml写相关配置,也能实现零配置?

? 有关属性我主要试了两个,Result和Action

?

Result?

1>2.0的value属性变成了2.1的location

2>type属性在2.1里必须要写成字符串类型的

例子是这样的

@Result(

?????? name="success",

?????? location="/suc.jsp",//2.0为value属性

?????? type="org.apache.struts2.dispatcher.ServletRedirectResult.class"//2.0没有引号

)

?

?

?

Action(action的其他用法希望知道的人能分享一下~)

1>2.1以前没有此属性,这个方法可以把一个action映射多个路径

2>使用方法

@Action(value="addUser",results={
??? ? @Result(name="success",location="/addSuc.jsp")
??? })


?? 例子是这样的

?

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.Result;
import com.opensymphony.xwork2.ActionSupport;

@Namespace("/user")//这里测试了一下命名空间,和以前一样


public class UserAction extends ActionSupport {


?? ?@Action(value = "addUser", results = { @Result(name = "success",

location = "/addSuc.jsp",

type = "org.apache.struts2.dispatcher.ServletRedirectResult.class") }//这里测试了一下Redirect的客户端跳转方式

)
?? ?public String add() throws Exception {
?? ??? ?System.out.println("add方法被调用");
?? ??? ?return SUCCESS;
?? ?}

?? ?@Action(value = "delUser", results = { @Result(name = "success", location = "/delSuc.jsp") })
?? ?public String del() throws Exception {
?? ??? ?System.out.println("del方法被调用");
?? ??? ?return SUCCESS;
?? ?}

?? ?@Action(value = "modifyUser", results = { @Result(name = "success", location = "/modifySuc.jsp") })
?? ?public String modify() throws Exception {
?? ??? ?System.out.println("modify方法被调用");
?? ??? ?return SUCCESS;
?? ?}

?? ?@Action(value = "queryUser", results = { @Result(name = "success", location = "/querySuc.jsp") })
?? ?public String query() throws Exception {
?? ??? ?System.out.println("query方法被调用");
?? ??? ?return SUCCESS;
?? ?}

}


jsp调用

?

? <a href="user/addUser.action">添加</a>
??? <a href="uesr/delUser.action">删除</a>
??? <a href="user/modifyUser.action">修改</a>
??? <a href="user/queryUser.action">查询</a>

?

?


就这么多了~有不对的地方请指正~

?

热点排行