Mybaits整合到Spring中

本文介绍了MyBatis整合到Spring的方法。首先需导入相关jar包,如为Spring核心提供扩展、支持事务和AOP等的包。还给出了db.properties、log4j.properties、mybatis - cfg.xml、applicationContext.xml等配置文件模板,说明MyBatis整合到Spring时部分配置可在特定文件中设值注入。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Mybaits整合到Spring中

​ 注册SqlSessionFactoryBean 对象就ok了。

  • 导入相关jar包

  • 各种配置文件:

    • applicationContext.xml (spring配置文件)
    • db.properties (数据源配置文件)
    • log4j.properties (log4j日志配置文件)
    • mybatis-cfg.xml (mybaits配置文件)

    applicationContext.xml 依赖 db.propertiesmybatis-cfg.xml

导入相关jar包

maven导入jar包截图

image.png

相关maven坐标

  <dependencies>
  	<dependency>
  		<groupId>org.springframework</groupId>
  		<artifactId>spring-context</artifactId>
  		<version>4.3.21.RELEASE</version>
  	</dependency>
  	<dependency>
  		<groupId>org.springframework</groupId>
  		<artifactId>spring-tx</artifactId>
  		<version>4.3.21.RELEASE</version>
  	</dependency>
  	<dependency>
  		<groupId>org.aspectj</groupId>
  		<artifactId>aspectjweaver</artifactId>
  		<version>1.8.14</version>
  	</dependency>
  	<dependency>
  		<groupId>org.springframework</groupId>
  		<artifactId>spring-orm</artifactId>
  		<version>4.3.21.RELEASE</version>
  	</dependency>
  	<dependency>
  		<groupId>org.mybatis</groupId>
  		<artifactId>mybatis</artifactId>
  		<version>3.4.6</version>
  	</dependency>
  	<dependency>
  		<groupId>org.slf4j</groupId>
  		<artifactId>slf4j-log4j12</artifactId>
  		<version>1.7.25</version>
  	</dependency>
  	<dependency>
  		<groupId>org.mybatis</groupId>
  		<artifactId>mybatis-spring</artifactId>
  		<version>1.3.2</version>
  	</dependency>
  	<dependency>
  		<groupId>com.mchange</groupId>
  		<artifactId>c3p0</artifactId>
  		<version>0.9.5.2</version>
  	</dependency>
  	<dependency>
  		<groupId>mysql</groupId>
  		<artifactId>mysql-connector-java</artifactId>
  		<version>8.0.16</version>
  	</dependency>
  </dependencies>

jar包分析

spring-context :为Spring核心提供了大量扩展。可以找到使用Spring ApplicationContext特性时所需的全部 类。

spring-tx:提供事务支持。

aspectjweaver:提供AOP支持

spring-orm:对象关系映射,提供对象持久化支持

mybaits:持久层框架

slf4j-log4j12:管理log4j的框架

mybatis-spring :spring与mybaits的媒婆,整合spring与mybaits的框架

c3p0:数据库连接池框架

mysql-connector-java:jdbc连接mysql的框架。

db.properties模板

root 后面不要有空格

#开发环境
driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/temp01?useUnicode=true&characterEncoding=UTF-8&userSSL=false&serverTimezone=GMT%2B8
names=root
password=cjw123

log4j.properties 模板

log4j.rootCategory=debug, stdout , R
 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[QC] %p [%t] %C.%M(%L) | %m%n
 
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R.File=f:\\qc.log
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d-[TS] %p %t %c - %m%n

mybatis-cfg.xml 模板

mybaits整合到spring中,该配置文件的大部分设置在 SqlSessionFactoryBean 中设值注入就可以了。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
 
	 <settings>
	 	<!-- 开启延迟加载 -->
	 	<setting name="lazyLoadingEnabled" value="true"/>
	 	<setting name="aggressiveLazyLoading" value="false"/>
	 </settings>
 
</configuration>

applicationContext.xml 模板

<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:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	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-4.3.xsd
		http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsd
		http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.3.xsd">
	<!-- 关联数据属性文件 -->
	<context:property-placeholder location="classpath:db.properties"/>
	<!-- 开启扫描 -->
	<context:component-scan base-package="com.bb.service.impl"/>

	<!-- 配置数据源 -->
	<bean class="com.mchange.v2.c3p0.ComboPooledDataSource" id="dataSource" >
		<property name="driverClass" value="${driverName}"></property>
		<property name="jdbcUrl" value="${url}"></property>
		<property name="user" value="${names}"></property>
		<property name="password" value="${password}"></property>
	</bean>
	<!-- 整合mybatis -->
	<bean class="org.mybatis.spring.SqlSessionFactoryBean" id="sqlSessionFactoryBean" >
		<!-- 关联数据源 -->
		<property name="dataSource" ref="dataSource"/>
		<!-- 关联mybatis的配置文件 -->
		<property name="configLocation" value="mybatis-cfg.xml"/>
		<!-- 添加别名设置 -->
		<property name="typeAliasesPackage" value="com.bb.pojo"/>
	</bean>
	<!-- 配置扫描的路径 -->
	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer" >
		<property name="basePackage" value="com.bb.dao"/>
	</bean>
</beans>

项目打包 提取码:wa3q 环境:eclipse,maven

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值