SSM框架整合之配置xml文件步骤

SSM框架整合之配置xml文件步骤

一、首先配置 web.xml 文件:

1.配置上下文初始化参数, 主要是配置MyBatis或者是日志配置文件

1
2
3
4
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:你的Spring-myBatis.xml文件</param-value>
  </context-param>

2.添加上下文加载的监听器

1
2
3
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

3.配置前端控制器DispatcherServlet: 初始化参数为SpringMVC的配置文件. 该Servlet必须在容器启动时就初始化

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!-- 前端控制器 -->
<servlet>
    <servlet-name>SpringMVC</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- 初始化参数, 告诉DispatcherServlet去哪找配置文件, 默认是WEB-INF -->
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:你SpringMVC配置文件的路径</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>

4.配置编码过滤器(非必须)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<!-- 针对post请求设置编码过滤器 start -->
  <filter>
    <filter-name>encodingfilter</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>
    <!-- 是否将请求编码强制转换为UTF-8 -->
    <init-param>
      <param-name>forceRequestEncoding</param-name>
      <param-value>true</param-value>
    </init-param>
    <!-- 是否将响应编码强制转换为UTF-8 -->
    <init-param>
      <param-name>forceResponseEncoding</param-name>
      <param-value>true</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>encodingfilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

二、 配置 Spring-Mybatis.xml

1、数据源配置: 数据库地址,驱动,账号密码以及连接池方面的配置 ,若使用properties文件存储数据库相关信息,需要先加载之。

1
2
3
4
5
6
7
8
9
<!-- 外部引入数据库配置文件(需要的话) -->
  <context:property-placeholder location="classpath:你的jdbc.properties路径" />
 <!-- 配置数据源 -->
  <bean class="com.alibaba.druid.pool.DruidDataSource" id="dataSource"  >
    <property name="username" value="${jdbc.username}" />
    <property name="password" value="${jdbc.password}" />
    <property name="url" value="${jdbc.url}" />
    <property name="driverClassName" value="${jdbc.driverClass}" />
</bean>

2、SqlSession会话工厂配置: 数据源, *.mapper.xml映射文件的位置, 支持分页插件的配置 ,MyBatis主配置文件等…

1
2
3
4
5
6
7
<bean class="org.mybatis.spring.SqlSessionFactoryBean" id="sqlSessionFactoryBean" >
    <property name="dataSource" ref="dataSource" />
    <!-- 自动扫描mapper的映射文件 -->
    <property name="mapperLocations" value="classpath:你mapper.xml配置文件的路径(如ssm1.com.lzm.mapper.*.xml)" />  
    <!-- 配置MyBatis配置文件 -->
    <!-- <property name="configuration" value="" /> -->
</bean>

3、Mapper接口扫描配置:SQL会话工厂配置,*.mapper接口所在的包

1
2
3
4
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer" id="mapperScannerConfigurer" >
    <property name="sqlSessionFactoryBeanName" value="sqlSessionFactoryBean" />
    <property name="basePackage" value="你mapper.java接口文件的位置" />
</bean>

4、 数据源事务管理

1
2
3
<bean class="org.springframework.jdbc.datasource.DataSourceTransactionManager" id="dataSourceTransactionManager" >
    <property name="dataSource" ref="dataSource" />
</bean>

5、 注解驱动或者声明式事务开启

1
<tx:annotation-driven transaction-manager="(这是数据源事务管理的id)dataSourceTransactionManager" />

6、扫描service所在包

1
<context:component-scan base-package="你的service类所在的包 - ssm2.lzm.service" />

三、 配置 SpringMVC.xml (application.xml)

1、配置视图解析器 InternalResourceViewResolve : 前缀prefix、 后缀suffix

1
2
3
4
5
  <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="internalResourceViewResolver" >
    <property name="contentType" value="text/html"/>
    <property name="prefix" value="/WEB-INF/views/"></property>
    <property name="suffix" value=".jsp"></property>
  </bean>

2. 配置MVC注解驱动 : 消息转化器, 主要使用alibaba的fastJson

1
2
3
4
5
  <mvc:annotation-driven>
    <mvc:message-converters>
      <bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter" />
    </mvc:message-converters>
  </mvc:annotation-driven>

3.配置扫描解析器context:component-scan

1
<context:component-scan base-package="包的全限定名" />

4. (重要)处理static文件夹下的静态资源文件请求

1
<mvc:default-servlet-handler  />

评论

目前还没有评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注