【ssm框架整合-xml方式】spring+springmvc+mybatis框架整合项目

一、spring+springmvc+mybatis xml方式整合ssm项目

1.1 前置条件

1.1.1 数据库配置文件
  1. 创建连接数据库配置文件信息db.properties
db.driverClassName=com.mysql.cj.jdbc.Driver
db.url=jdbc:mysql:///数据库名?characterEncoding=utf-8&serverTimezone=UTC&allowPublicKeyRetrieval=true&useSSL=false
db.username=数据用户名
db.password=数据库密码
db.maxWait=60000
db.initialSize=100
db.maxActive=200
db.minIdle=10

1.1.2 日志打印配置文件
  1. 创建文件名为:log4j.properties
# Global logging configuration
log4j.rootLogger=DEBUG, stdout
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n

1.1 spring的配置

1.1.1 applicationContext.xml配置文件
  1. 配置扫描包:扫描除了含有Controller控制层外的注解,use-default-filters="true"开启默认扫描所有的注解,expression排除Controller注解类
 <!--扫描包,排除Controller层-->
<context:component-scan base-package="com.peanut.ssm" use-default-filters="true">
    <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
</context:component-scan>
  1. 配置数据库:引入数据配置文件信息,使用阿里的druid连接池,数据库相关在spring容器中配置(spring容器相当于是springmvc容器的父类,子类可以使用父类的资源,而父类不能使用子类的资源)
<!--引入数据库-->
<context:property-placeholder location="classpath:db.properties"/>
 <!--配置数据源-->
<bean class="com.alibaba.druid.pool.DruidDataSource" id="dataSource">
     <property name="driverClassName" value="${db.driverClassName}"/>
     <property name="url" value="${db.url}"/>
     <property name="username" value="${db.username}"/>
     <property name="password" value="${db.password}"/>
</bean>
  1. 在个层添加相应的注解@Service这些

1.2 springmvc的配置

1.2.1 spring-servlet.xml配置文件
  1. 配置扫描包:只扫描Controller注解类下的所有
<context:component-scan base-package="com.peanut.ssm" use-default-filters="false">
    <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
</context:component-scan>
  1. 配置处理器映射器和处理器适配器
<!--注意是mvc包的-->
<mvc:annotation-driven/>
  1. 配置内部资源视图解析器(添加页面视图前后缀)
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/jsp/"/>
    <property name="suffix" value=".jsp"/>
</bean>
  1. 对静态资源进行放行
<mvc:resources mapping="**/**" location="/"/>
1.2.2 文件位置注意点
  1. 当mapper.xml文件和mapper接口放在同一文件中时需要把它们编译在一起。扫描包时,是对它们的接口进行扫描,前提是文件和接口必须放在一起和同名。
  2. 指定编译位置,pom.xml配置
<build>
    <resources>
         <resource><directory>src/main/resources</directory></resource>
         <resource>
             <directory>src/main/java</directory>
             <includes>
                 <include>**/*.xml</include>
             </includes>
         </resource>
     </resources>
</build>

对上述测试跑通

1.3 mybatis的配置(applicationContext.xml)

1.3.1 配置会话工厂(SqlSessionFactoryBean)
<!--配置mybatis-->
 <bean class="org.mybatis.spring.SqlSessionFactoryBean" id="sqlSessionFactory">
     <!--引入数据源-->
     <property name="dataSource" ref="dataSource"/>
     <!--给实体类起别名-->
     <property name="typeAliasesPackage" value="com.peanut.ssm.model"/>
     <!--扫描mapper文件下的所有额*.xml-->
     <property name="mapperLocations">
         <value>
             classpath*:com/peanut/ssm/mapper/*.xml
         </value>
     </property>
 </bean>
1.3.2 配置一个地图扫描仪(MapperScannerConfigurer)
  1. 扫描mapper文件下所有的接口
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
   <!--扫描mapper下所有接口-->
    <property name="basePackage" value="com.peanut.ssm.mapper"/>
    <!--引用给sqlSessionFactory-->
    <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
</bean>
  1. 添加xxxmapper.xml和xxxmapper接口即可,两者需要同名。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT阿生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值