spring和mybatis集成

数据库:mysql-5.1.47
连接池:c3p0-0.9.5.4

1.导入maven依赖
	<!--mysql驱动-->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.47</version>
    </dependency>

    <!--spring-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>5.3.14</version>
    </dependency>
	
	<!--spring mybatis集成-->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis-spring</artifactId>
      <version>2.0.6</version>
    </dependency>

    <!--mybatis-->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.5.6</version>
    </dependency>

    <!--jbbc-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jdbc</artifactId>
      <version>5.3.14</version>
    </dependency>

    <!--c3p0连接池-->
    <dependency>
      <groupId>com.mchange</groupId>
      <artifactId>c3p0</artifactId>
      <version>0.9.5.4</version>
    </dependency>
2.spring-mybatis配置文件
<!--<context:annotation-config/> 包扫描-->
<context:component-scan base-package="com.*" />

<!--加载数据库配置文件-->
<context:property-placeholder location="db.properties"/>

<!--c3p0数据源-->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
     <property name="driverClass" value="${driverClass}"/>
     <property name="jdbcUrl" value="${jdbcUrl}"/>
     <property name="user" value="${user}"/>
     <property name="password" value="${password}"/>

     <property name="initialPoolSize" value="${initialPoolSize}" />
     <property name="minPoolSize" value="${minPoolSize}"></property>
     <property name="maxPoolSize" value="${maxPoolSize}"></property>
     <property name="maxIdleTime" value="${maxIdleTime}"></property>
</bean>

<!--mybatis整合到spring需要添加的sqlSessionFactoryBean-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />
<!--<property name="mapperLocations" value="classpath:mapper/*.xml"/>-->
<!--<property name="mapperLocations" value="classpath:com/dao/*.xml"/>-->
</bean>

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  <!--操作数据库的接口包-->
  <property name="basePackage" value="com.dao" />
  <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
</bean>

3.db.properties配置文件,对应xml中dataSource相关属性值
#根据数据库版本修改driverClass
#driverClass=com.mysql.cj.jdbc.Driver  6.x及以上版本
#driverClass=com.mysql.jdbc.Driver  5.x及以下版本

driverClass=com.mysql.jdbc.Driver
jdbcUrl=jdbc:mysql://localhost:3306/xxx?useSSL=false&useUnicode=true&amp;characterEncoding=UTF-8&allowMultiQueries=true&useAffectedRows=true
user=root
password=root

#连接池配置
initialPoolSize=5
minPoolSize=1
maxPoolSize=40
maxIdleTime=20

注意点:
 
    如果mapper.xml文件src/main/java目录下,需要在pom.xml文件的build标签中
 
添加如下,idea构建maven项目时不编译src/main/java目录下写的mapper.xml文件
 
如果mapper文件在resources目录下可取消spring配置文件中
 
<propertyname=“mapperLocations” value=“classpath:mapper/.xml"/> 的注释
 
扫描resources目录下的mapper文件.
 
接口和mapper文件同包同名只是后缀不同,就不需要再扫描,mybatis自动解析
 
文件名不同或不在同一个包中,取消spring配置文件中
 
<propertyname=“mapperLocations” value="classpath:com/dao/
.xml”/> 的注释

在这里插入图片描述


<resources>
<!-- mapper.xml文件在java目录下 -->
  <resource>
    <directory>src/main/java</directory>
    <includes>
      <include>**/*.xml</include>
    </includes>
  </resource>
  
  <!--配置文件-->
  <resource>
    <directory>src/main/resources</directory>
     <includes>
       <include>**/*.properties</include>
       <include>**/*.xml</include>
     </includes>
   </resource>
</resources>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值