本次我来谈谈对Spring MVC的理解。
MVC的作用主要是将页面显示层(V),请求处理与转发(C),实体模型(M)分开,各部分做自己的操作,这样不但结构清晰,易于理解,同时大大降低了耦合度。
Struts是世界上第一个开源MVC框架,技术比较成熟,现在公司使用Structs2的比较多,Struts2在Structs1上增加了许多内容,两者的差别比较大。Spring MVC 也是一个比较好的框架,它只比Struts1的运行速度稍微慢一点,但比Structs2快好几倍,而且Spring框架还有比较流行的IOC、AOP技术,所以Spring MVC也备受青睐啊。
那么这么多MVC,我们怎样使用呢,其实,无论那一个MVC框架,他们的处理流程大体都是一样的,下面以Struts1与Spring MVC来比较一下MVC的处理流程。
第一步:将相应框架所的核心包与依赖包放到项目中 (此步骤比较简单,省略之)
第二步:配置核心控制器。(在web.xml中配置)
Struts :
<servlet>
<servlet-name>actionServlet</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>actionServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
Spring MVC:
<servlet>
<servlet-name>dispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
第三步:创建Jsp页面(此不比较简单,省略之......)
第四步:配置请求转发(处理请求的业务控制器)
Struts:
以登陆页面为例(页面请求login.do,登陆成功跳到seccess.jsp页面) ,默认的配置文件名称是struts-config.xm l
<action-mappings> <action path="/login" type="com.dqq.action.LoginAction"> <forward name="success" path="/success.jsp" /> </action> </action-mappings>
Spring MVC:
Spring使用注解@Controller,在普通Java类之上加上@Controller注解,就说明该类是一个业务逻辑控制器。
@Controller public class UserLogin { @RequestMapping(value = "/login") public String login(){ 在此调用逻辑层..... return "/success.jsp"; } }
从上面可以看出MVC流程完全一样,只是处理方式不同,如有疑问或更好的见解,请跟帖。
内容会继续更新中......请关注。