随笔 - 6, 文章 - 4, 评论 - 0, 引用 - 0
数据加载中……

转载 我的struts2配置,间接实现零配置

所谓间接实现零配置,是指只要做些初始化的配置之后,在以后的开发中基本上不用再对每个Action做配置

struts.xml这样配置

代码
  1. <action name="*/*" method="{2}" class="workbench.web.actions.{1}Action">  
  2.    <result name="custom">/view/{1}/${target}.jsp</result>  
  3. </action>  

 

struts.properties的配置:

代码
  1. struts.objectFactory = spring   
  2. struts.objectFactory.spring.autoWire = name   
  3. struts.devMode = true  
  4. struts.enable.DynamicMethodInvocation = false  
  5. struts.action.extension =    
  6. struts.enable.SlashesInActionNames = true  

 

然后写一个BaseAction:

代码
  1. public abstract class BaseAction {   
  2.     protected final String CUSTOM = "custom";   
  3.     private String target;   
  4.     protected final Log logger = LogFactory.getLog(getClass());   
  5.     public String getTarget() {   
  6.         return target;   
  7.     }   
  8.     public void setTarget(String target) {   
  9.         this.target = target;   
  10.     }   
  11.        
  12.     protected String render(String _target){   
  13.         setTarget(_target);   
  14.         return CUSTOM;   
  15.     }   
  16. }  

 

这样其余的Action都可以直接继承BaseAction,不用再做任何配置
通过return render(target)转发到指定的jsp页面,从而间接实现零配置

代码
  1. public class UserAction extends BaseAction{   
  2.     private User user;   
  3.     private UserService userService;   
  4.     public void setUserService(UserService userService) {   
  5.         this.userService = userService;   
  6.     }   
  7.        
  8.     public User getUser() {   
  9.         return user;   
  10.     }   
  11.     public void setUser(User user) {   
  12.         this.user = user;   
  13.     }   
  14.     public String test(){   
  15.         user = userService.get(1l);   
  16.         return render("test");   
  17.     }   
  18. }  

posted on 2007-11-14 20:50 小石~~ 阅读(272) 评论(0)  编辑  收藏 所属分类: ssh相关


只有注册用户登录后才能发表评论。


网站导航: