找回密码
 立即注册
首页 业界区 业界 使用xml文件配置SSM整合

使用xml文件配置SSM整合

这帜 2025-6-9 08:51:06
使用XML文件配置SSM整合。
缺点:xml解析低,降低项目响应效率。
配置web.xml
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
  3.         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4.         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
  5.         version="4.0">
  6.        
  7.         <filter>
  8.                 <filter-name>characterEncodingFilter</filter-name>
  9.                 <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  10.                 <init-param>
  11.                         <param-name>encoding</param-name>
  12.                         <param-value>true</param-value>
  13.                 </init-param>
  14.                 <init-param>
  15.                         <param-name>forceEncoding</param-name>
  16.                         <param-value>true</param-value>
  17.                 </init-param>
  18.         </filter>
  19.         <filter-mapping>
  20.                 <filter-name>characterEncodingFilter</filter-name>
  21.                 <url-pattern>/*</url-pattern>
  22.         </filter-mapping>
  23.        
  24.        
  25.         <filter>
  26.                 <filter-name>hiddenHttpMethodFilter</filter-name>
  27.                 <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
  28.         </filter>
  29.         <filter-mapping>
  30.                 <filter-name>hiddenHttpMethodFilter</filter-name>
  31.                 <url-pattern>/*</url-pattern>
  32.         </filter-mapping>
  33.        
  34.        
  35.         <servlet>
  36.                 <servlet-name>dispatcherServlet</servlet-name>
  37.                 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  38.                 <init-param>
  39.                         <param-name>contextConfigLocation</param-name>
  40.                         <param-value>classpath:springmvc.xml</param-value>
  41.                 </init-param>
  42.                 <load-on-startup>1</load-on-startup>
  43.         </servlet>
  44.         <servlet-mapping>
  45.                 <servlet-name>dispatcherServlet</servlet-name>
  46.                 <url-pattern>/</url-pattern>
  47.         </servlet-mapping>
  48.        
  49.         <context-param>
  50.                 <param-name>contextConfigLocation</param-name>
  51.                 <param-value>classpath:spring.xml</param-value>
  52.         </context-param>
  53.        
  54.         <listener>
  55.                 <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  56.         </listener>
  57.        
  58. </web-app>
复制代码
配置控制层(springmvc.xml)
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3.        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4.        xmlns:context="http://www.springframework.org/schema/context"
  5.        xmlns:mvc="http://www.springframework.org/schema/mvc"
  6.        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd">
  7.    
  8.     <context:component-scan base-package="com.evan.controller"/>
  9.    
  10.     <bean id="viewResolver" >
  11.         <property name="order" value="1"/>
  12.         <property name="characterEncoding" value="UTF-8"/>
  13.         <property name="templateEngine">
  14.             <bean >
  15.                 <property name="templateResolver">
  16.                     <bean >
  17.                         <property name="characterEncoding" value="UTF-8"/>
  18.                         <property name="order" value="2"/>
  19.                         <property name="templateMode" value="HTML5"/>
  20.                         
  21.                         <property name="prefix" value="/WEB-INF/views"/>
  22.                         
  23.                         <property name="suffix" value=".html"/>
  24.                     </bean>
  25.                 </property>
  26.             </bean>
  27.         </property>
  28.     </bean>
  29.    
  30.     <bean  id="resourceViewResolver">
  31.         <property name="order" value="1"/>
  32.         <property name="prefix" value="/WEB-INF/views"/>
  33.         <property name="suffix" value=".jsp"/>
  34.     </bean>
  35.        
  36.    
  37.     <mvc:interceptors>
  38.         
  39.         
  40.         <mvc:interceptor>
  41.             
  42.             <mvc:mapping path="/**"/>
  43.             
  44.             <mvc:exclude-mapping path="/test/hello"/>
  45.             
  46.             <ref bean="firstInterceptor"/>
  47.         </mvc:interceptor>
  48.     </mvc:interceptors>
  49.    
  50.     <bean >
  51.         
  52.         <property name="order" value="1"/>
  53.         
  54.         <property name="exceptionMappings">
  55.             <props>
  56.                
  57.                 <prop key="java.lang.Exception">error</prop>
  58.                 <prop key="java.lang.NullPointerException">error</prop>
  59.                 <prop key="java.lang.ArithmeticException">error</prop>
  60.             </props>
  61.         </property>
  62.         
  63.         <property name="defaultErrorView" value="error"/>
  64.         
  65.         <property name="exceptionAttribute" value="ex"/>
  66.         
  67.         
  68.         
  69.         
  70.         
  71.         
  72.     </bean>
  73.    
  74.     <mvc:view-controller path="/" status-code="200" view-name="index"/>
  75.    
  76.     <mvc:redirect-view-controller path="/baidu" redirect-url="https:www.baidu.com"/>
  77.    
  78.     <mvc:default-servlet-handler/>
  79.    
  80.     <mvc:annotation-driven/>
  81. </beans>
复制代码
配置业务层组件(spring.xml)

jdbc.properties
  1. jdbc.username=root
  2. jdbc.password=******
  3. jdbc.url=jdbc:mysql://localhost:3306/ssm?serverTimezone=GMT%2B8&characterEncoding=utf8
  4. jdbc.driver=com.mysql.cj.jdbc.Driver
复制代码
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3.        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4.        xmlns:context="http://www.springframework.org/schema/context"
  5.        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">
  6.    
  7.     <context:component-scan base-package="com.evan">
  8.         
  9.         <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
  10.     </context:component-scan>
  11.    
  12.     <context:property-placeholder location="classpath:jdbc.properties"/>
  13.    
  14.     <bean id="dataSource" >
  15.         <property name="driverClassName" value="${jdbc.driver}"/>
  16.         <property name="url" value="${jdbc.url}"/>
  17.         <property name="username" value="${jdbc.username}"/>
  18.         <property name="password" value="${jdbc.password}"/>
  19.     </bean>
  20.    
  21.     <bean  id="transactionManager">
  22.         <property name="dataSource" ref="dataSource"/>
  23.     </bean>
  24.    
  25.    
  26.    
  27.     <tx:advice id="txadvice">
  28.         
  29.         <tx:attributes>
  30.             
  31.             
  32.             
  33.             <tx:method name="get*" read-only="true"/>
  34.             <tx:method name="query*" read-only="true"/>
  35.             <tx:method name="find*" read-only="true"/>
  36.             
  37.             
  38.             
  39.             
  40.             
  41.             
  42.             <tx:method name="save*" read-only="false" rollbackfor="java.lang.Exception" propagation="REQUIRES_NEW"/>
  43.             <tx:method name="update*" read-only="false" rollbackfor="java.lang.Exception" propagation="REQUIRES_NEW"/>
  44.             <tx:method name="delete*" read-only="false" rollbackfor="java.lang.Exception" propagation="REQUIRES_NEW"/>
  45.         </tx:attributes>
  46.     </tx:advice>
  47.    
  48.    
  49.         
  50.         
  51.         
  52.         
  53.     </aop:config>
  54.    
  55.    
  56.     <bean  id="sqlSessionFactory">
  57.         
  58.         <property name="dataSource" ref="dataSource"/>
  59.         
  60.         <property name="configLocation" value="classpath:mybatis-config.xml"/>
  61.         
  62.     </bean>
  63.    
  64.    
  65. </beans>
复制代码
配置持久层(mybatis-config.xml)
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE configuration
  3.         PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  4.         "http://mybatis.org/dtd/mybatis-3-config.dtd">
  5. <configuration>
  6.    
  7.     <settings>
  8.         
  9.         <setting name="mapUnderscoreToCamelCase" value="true"/>
  10.         
  11.         <setting name="logImpl" value="SLF4J"/>
  12.     </settings>
  13.    
  14.     <typeAliases>
  15.         
  16.         <package name="com.evan.bean"/>
  17.     </typeAliases>
  18.     <plugins>
  19.         
  20.         <plugin interceptor="com.github.pagehelper.PageInterceptor"/>
  21.     </plugins>
  22.    
  23.     <mappers>
  24.         
  25.         <package name="com.evan.mapper"/>
  26.     </mappers>
  27. </configuration>
复制代码
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册