1.整合SpringMVC
-
将原来的普通maven项目变为web项目
-
使用springmvc,首先要去web.xml中注册DispatcherServlet和乱码过滤器
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<!--1、DispatcherServlet-->
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!--配置管理的spring配置文件/容器-->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring-mvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!--2、乱码过滤器-->
<filter>
<filter-name>encoding</filter-name>
<filter-class>org.springframework.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>encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!--3、session配置-->
<session-config>
<session-timeout>15</session-timeout><!--单位为分钟-->
</session-config>
</web-app>
- 配置springMVC核心配置文件
<?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:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc
https://www.springframework.org/schema/mvc/spring-mvc.xsd">
<!--1、注解驱动,主要就是用于spring自动为我们装配HandlerMapping和HandlerAdapter两个对象-->
<mvc:annotation-driven />
<!--2、过滤静态资源-->
<mvc:default-servlet-handler/>
<!--3、扫描包,主要是@controller注解,所以对应烧苗controller包-->
<context:component-scan base-package="com.thhh.controller"/>
<!--4、视图解析器-->
<bean id="view" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"/>
<property name="suffix" value=".jsp"/>
</bean>
</beans>
- 创建对应的视图文件夹
通过以上步骤,整个ssm整合结束;这里说的结束是指ssm框架整个的spring配置文件已经全部配置完毕,剩下的就是去按照业务编写逻辑代码,或者使用注解开发更快捷
- 最后创建一个总的spring配置文件applicationContext.xml,导入其他所有的spring配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/springbeans.xsd">
<import resource="classpath:spring-dao.xml"/>
<import resource="classpath:spring-service.xml"/>
<import resource="classpath:spring-mvc.xml"/>
</beans>
2.小结
在整个整合过程中,我们都在配置spring配置文件,我们一共创建4个spring配置文件
- spring-dao.xml:用于整合mybatis
- spring-service.xml:用于控制service层的bean装配和事务操作,以及AOP横向增强
- spring-mvc.xml:用于配置springMVC使用的时候需要配置的4个必要节点:注解驱动、过滤静态资源、扫描包和视图解析器
- applicationContext.xml:作为总的spring配置文件,在文件中使用import节点将其他3个配置文件导入即可实现将所有的spring配置文件融合成一个大的配置文件,这样就可以最终形成一个大的spring容器供我们使用
所以,ssm整合,其实就是在配置每一层的spring配置文件,我们在整合的时候也需要按照这样的配置步骤/思想,为每一层的整合都创建一个spring配置文件,各个配置文件都只配置自己这一层中应该配置的东西,其他的都不管;再在最后创建一个总的spring配置文件,一般推荐使用官方文档命名,即applicationContext.xml来引入所有的子配置文件,这样我们在配置spring文件的时候才更加有条理性,各层的职责才更加明确和独立
在resources文件夹下面一共有6个文件,还有两个是db.properties(存储数据库连接4大参数)和mybatis-config.xml(mybatis核心配置文件)