标签:mil 应用程序 技术 class tar mysql 而且 测试 aik
Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的Spring MVC框架或集成其他MVC开发框架,如Struts1(现在一般不用),Struts 2(一般老项目使用)等。
Lifecycle for overriding binding, validation, etc,易于同其它View框架(Tiles等)无缝集成,采用IOC便于测试。
它是一个典型的教科书式的mvc构架,而不像struts等都是变种或者不是完全基于mvc系统的框架,对于初学者或者想了解mvc的人来说我觉得 spring是最好的,它的实现就是教科书!第二它和tapestry一样是一个纯正的servlet系统,这也是它和tapestry相比 struts所具有的优势。而且框架本身有代码,看起来容易理解。
1. 拿到浏览器的请求先经过了核心控制器
2. 获得hello.do路径比较映射器中拿取name值的hello.do
3. 根据映射器获得的路径去找一个实现controller接口的控制器
4. 控制器响应的数据到核心控制器中,但是核心控制器并不认识ModelAndView是什么
5. 把ModelAndView交给视图解析器来解析,解析之后再给核心控制器
6. 核心控制器把视图解析过后的数据进行处理
springmvc的控制器是单例的,尽量避免书写成员属性
<dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>4.2.5.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.1.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>4.2.4.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.2.4.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>4.2.4.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-expression</artifactId> <version>4.2.4.RELEASE</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.3</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>4.2.4.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>4.2.6.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aspects</artifactId> <version>4.2.4.RELEASE</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.9</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.32</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.2.4.RELEASE</version> </dependency> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>servlet-api</artifactId> <version>6.0.29</version> </dependency> </dependencies> |
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> <bean name="/hello.do" class="com.oracle.controller.HelloController"></bean> </beans> |
映射器会自动从name属性中,获取路径
注意:没有配置核心配置文件的位置和名称的时候,应该将其和web.xml文件创建在一起,且必须命名为DispatcherServlet-servlet.xml
新建一个控制类实现controller方法
将其部署到tomcat测试
只需在web.xml文件中,告诉核心控制器,配置文件在哪里叫什么即可
为每一个响应到浏览器的数据都要将其格式转换为utf-8,可以在web.xml中配置编码过滤器
但是如果拦截所有的路径,可能会将js,图片,css样式同样过滤掉,所以我们需要在springmvc.xml中配置哪些东西不需要被过滤
<mvc:resources location="/css/" mapping="/css/**"/> <mvc:resources location="/image/" mapping="/image/**"/> <mvc:resources location="/js/" mapping="/js/**"/> |
我们的jsp文件如果统一放在webapp下,会显得很多很乱,因此我们可以配置视图解析器,告诉核心控制器去那里找jsp文件,找以.jsp结尾的jsp文件。
<!-- 视图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/jsps/" /> <property name="suffix" value=".jsp"></property> </bean> |
这样我们在自定义的控制器中,就可以只写jsp文件的名字即可。
标签:mil 应用程序 技术 class tar mysql 而且 测试 aik
原文地址:https://www.cnblogs.com/mhm111/p/11422405.html