<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!制定接下来要配置的依赖工程中,字符依赖的工程信息>
<spring.version>4.2.0.RELEASE</spring.version > <!指定接下来要依赖的工程中SPRING工程依赖的版本>
<jackson-core.version>2.6.1</jackson-core.version> <!制定json的版本>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>${jackson-core.version}</version>
</dependency>
以上三个是dependencies中的必写,这个三组合标示依赖的具体工程,而且这个依赖工程必须是maven中心包管理范围内的。如果碰上非开源包,maven支持不了这个包
<type>jar</type>
<scope>test</scope>
<optional>true</optional>
</dependency>
这些东西配好之后,就明确了 你这个工程要使用到的技术和依赖项目啦。接下来就是一一更加详细的去配置那些依赖项目啦,而当使用配置项目的时候就是你程序运行的时候了,那么程序的运行最开就来到了web.xml
首先来到了web.xml文件,web.xml里面的一些常用配置,有日志文件Log4j的配置,然后就是框架的加载配置,
<servlet>
<servlet-name>caren</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>caren</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
以上web.xml中的代码的作用就是拦截请求,加载SPring框架的xml
拦截所以的请求,然后servlet被加载执行,真正执行的是那个spring类,那个类里面有一个参数,参数就是那要解析的文件<applicationContext.xml>
,aplicationContexy.xml是spring框架的必陪文件,文件名啊一开始就确定了的,里面是一些spring的信息,
对于spring配置,分为两部分。一部分MVC,一部分是数据。
针对数据常用必配的一些有数据源的配置,回话工厂的配置。
可以直接在application里面可以直接配置数据源,会话工厂啊,
<!-- dataSource 数据源 -->
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
也可以先将那些配置再一个文件里面,然后再appliation里面引用
<import resource="spring-mvc.xml"/>
<import resource="spring-mybatis.xml"/>
接着是mvc的配置,mvc 是一个轻量级的web框架,将web层进行职责解耦.
上面是mvc框架下请求响应的流程,其中的diapatcherservlet就拦截客户的请求,
DispatcherServlet——>HandlerMapping, HandlerMapping将会把请求映射为HandlerExecutionChain对象(包含一个Handler处理器(页面控制器)对象、多个HandlerInterceptor拦截器)对象,通过这种策略模式,很容易添加新的映射策略;
请求来了之后就是处理啦
将conterllhe servier里面的方法包装起来就成了处理器,但是程序怎么知道我这是处理器呢,通过注解所以要再spring里面把有注解的包添加进去,让程序自动扫描,@contrell就告诉程序,我这里接受请求,@servier告诉程序我这里要链接到数据,在和数据库打交道的时候,对于数据的操作我们有专门的Hibernate和mybites数据持久框架来做,所以spring会整合他们。虽然他们有自己的事物处理提交格式,但是对于以后修改代码很麻烦,所以spring支持我们自己配置事物管理,这样一来就有了Spring的事物配置,其中包括下图········
<mvc:annotation-driven /> 会自动注册DefaultAnnotationHandlerMapping与AnnotationMethodHandlerAdapter 两个bean,是spring MVC为@Controllers分发请求所必须的