0 0

springmvc和struts2的机制各有什么利弊5

所谓的机制不同,即springmvc入口是servlet,struts2入口是filter。那
么这两种机制各有什么利弊呢。

struts2入口是filter,比如用户登陆的时候,可以做权限过滤,这是使用filter的用处。

springmvc入口是servlet,意思是不提供过滤,为什么这么设计呢,只是为了减少配置吗,还是单纯为了和struts2不同。

有明白的吗,可以探讨一下。
2014年10月21日 15:29

5个答案 按时间排序 按投票排序

0 0

个人觉得不管是Struts2的filter还是SpringMVC的servlet,都只是作为一个总入口,没有什么区别,filter相对servlet的好处是可以实现过滤,但是servlet一样可以做到,不然SpringMVC也工作不起来,如果用户需要自己定义过滤器,那么当然是filter更方便了。

但是Struts2用fileter做入口SpringMVC用servelt做入口,跟用户自定义过滤器则没有任何关系,SpringMVC里面你一样可以自定义过滤器,只要继承HandlerInterceptorAdapter即可,结合配置文件,可以配置拦截什么样的URL不拦截什么样的URL,更加简洁好用。

所以说,Struts2用fileter做入口,SpringMVC用servelt做入口,对使用者来说应该没有任何影响。

至于权限过滤什么的,难道你还想自己实现不成?用SpringMVC,结合Shiro,进行权限控制,功能非常强大而且使用起来非常方便,根本不需要自己动手从零开始实现权限控制。

关于SpringMVC、Shiro,开涛的博客上都有非常系统详细的讲解,系列文章由浅入深,可以看看:http://jinnianshilongnian.iteye.com/

2014年10月23日 09:20
0 0

这个问题直接去问涛,他如果心情好,还能顺便教你泡妞

2014年10月22日 20:25
0 0

减少配置了么?

2014年10月22日 10:15
0 0

就入口而言,filter跟Servlet没有区别,作用都是接管request请求

2014年10月22日 09:09
0 0

额,没研究的那么深入,惭愧。springMVC应该是看DispatcherServlet里的源码的吧,我看配spring都是:

	<servlet>
		<servlet-name>spring</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>  
        	<param-name>contextConfigLocation</param-name>  
        	<param-value>/WEB-INF/conf/spring-main-config.xml</param-value>  
    	</init-param> 
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>spring</servlet-name>
		<url-pattern>/*</url-pattern>
	</servlet-mapping>

2014年10月22日 08:25

相关推荐

Global site tag (gtag.js) - Google Analytics