技术开发 频道

EasyJWeb vs Struts2



二、配置
1、零配置
  EasyJWeb与struts2都支持零配置,这里的零配置就是指只需要修改web.xml,而不需要写任何EasyJWeb或Struts2的配置文件,零配置的情况下需要为框架指明到哪儿去扫描Controller(Action)类。分别如下:
EasyJWeb的web.xml
<context-param>
  
<param-name>defaultActionPackages</param-name>
  
<param-value>myapp.demo,easyjweb.demo</param-value>
 
</context-param>
<servlet>
  
<servlet-name>easyjf</servlet-name>
  
<servlet-class>com.easyjf.web.ActionServlet</servlet-class>
  
<load-on-startup>1</load-on-startup>
 
</servlet>
 
<servlet-mapping>
  
<servlet-name>easyjf</servlet-name>
  
<url-pattern>/*</url-pattern>
 
</servlet-mapping>

 

Struts2的web.xml

<init-param>
    
<param-name>actionPackages</param-name>
    
<param-value>com.foo.bar,com.baz.quux</param-value>
  
</init-param>
<filter>
        
<filter-name>struts2</filter-name>
        
<filter-class>
            org.apache.struts2.dispatcher.FilterDispatcher
        
</filter-class>
    
</filter>
    
<filter-mapping>
        
<filter-name>struts2</filter-name>
        
<url-pattern>/*</url-pattern>
    
</filter-mapping>

 

2、惯例代替配置
  EasyJWeb中大量使用了惯例代替配置的机制,把应用程序按模块进行划分,惯例代替配置包含页面视图模板的查找,多国语言属性文件的查找、依赖注入等,已经在很多项目中成功应用。struts2也使用了一些惯例代替配置,但不知道能否用于实际开发。 
3、框架配置文件
  两个框架都可以有自己的配置文件,通过配置文件来提高系统的可维护性。EasyJWeb的配置文件中可以定义系统中的模块Module(相当于控制器或Action)、页面模板视图Page等MVC框架特有的属性,另外还可以配置业务组件<bean>、拦截器、异常处理器、及依赖注入,配置将要支持远程Web调用服务的Ajax业务组件等;EasyJWeb的配置文件功能更广,初学有一点大杂烩的感觉。
Struts2的配置文件同样可以用来配置Action、页面导向、拦截器,也可以配置业务组件Bean等,这一点跟EasyJWeb非常类似。采用分包及拦截器链的方式组织应用程序中的各个部件。
EasyJWeb配置文件中配置Bean

<bean name="CommonTemplatePage" class="com.easyjf.web.core.support.CommonTemplatePageVender">
 
<property name="suffix" value="ct"/>
 
</bean>

 Struts2配置文件中配置Bean

<bean type="com.opensymphony.xwork2.ObjectFactory" name="myfactory" class="com.company.myapp.MyObjectFactory" />
0
相关文章