三层架构
服务器端分成三层架构
表现层 | 业务层 | 持久层 |
---|---|---|
SpringMVC | Spring | MyBatis |
MVC设计模型架构
Model | View | Controller |
---|---|---|
模型 | 视图 | 控制器 |
JavaBean | jsp… | servlet |
SpringMVC概述

Spring MVC 的入口是Servlet,而Struts2是Filter
Spring MVC 是基于方法设计的,而Struts2是基于类创建稍微慢一点
Spring MVC 使用更加简洁,同时还支持JSR303,处理ajax的请求更方便
Struts2的OGNL表达式使页面的开发效率相比Spring MVC 更高,但执行效率并没有比JSTL提升,尤其是Struts2的表单标签,远没有HTML执行效率高
SpringMVC的入门
add maven Property配置archetypeCatalog:internal 解决创建项目过慢
12345678910111213141516 | web.xml 配置前端控制器<web-app><servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup></servlet><servlet-mapping> <servlet-name><dispatcherServlet/servlet-name> <url-pattern>/</url-pattern></servlet-mapping></web-app> |
入门案例
12345678910111213 | springconfig springmvc.xmlxmlns:mvc=“”xmlns:context=""<context:component-scan base-package=""/>//视图解析器<bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> //目录名 <property name="prefix" value="/WEB-INF/pages/"/> //后缀名 <property name="suffix" value=".jsp"></bean>//开启SpringMVC框架注解的支持<mvc:annotation-driven/> |
@Controller
@RequestMapping(path value method params headers)
配置web.xml解决中文乱码
123456789101112 | <filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springfrmework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param></filter><filter-mapping> <filter-name>characterEncodingFilter</filter-name> <url-pattern>/*</url-pattern></filter-mapping> |
请求参数的绑定
常用注解
来源:https://www.cnblogs.com/lijianming180/p/12227040.html