
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。
🍎个人主页:Java Fans的博客
🍊个人信条:不迁怒,不贰过。小知识,大智慧。
💞当前专栏:SSM 框架从入门到精通
✨特色专栏:国学周更-心性养成之路
🥭本文内容:一文学会 Spring 整合 MyBatis

Spring 整合 MyBatis 可以实现让数据库连接,事务管理,实例化对象的创建与依赖关系等都统一由 Spring 负责,以及数据库的增删改查操作由 spring-mybatis 整合包提供的 SqlSessionTemplate 对象来操作,或者利用整合包扫描接口,依据 Mapper 映射文件直接创建代理实现类,无须程序员手工实现接口,大大简化了开发流程。SpringMVC 本来就是 Spring 框架的一部分,这两者无须再做整合,所以 SSM 整合的关键就是Spring对MyBatis的整合,三大框架整合完成后,将以 Spring 为核心,调用有关资源,高效运作。

Spring 整合 MyBatis 开发环境除了需要 Spring 的jar包和 MyBatis 的jar包,还需要 Spring 与 MyBatis 整合的中间件 mybatis-spring-xxx.jar,此外还需要数据库驱动jar包 mysql-connector-java-xxx.jar。
项目案例:Spring + MyBatis 实现对 user 数据库的查询。
实现步骤:
4.0.0 cn.kgc.sm spring06 1.0-SNAPSHOT jar spring06 http://maven.apache.org UTF-8 junit junit 4.12 test mysql mysql-connector-java 5.1.47 com.alibaba druid 1.2.9 org.mybatis mybatis 3.5.9 org.springframework spring-context 5.3.9 org.mybatis mybatis-spring 2.0.5 org.springframework spring-aspects 5.3.9 org.springframework spring-jdbc 5.3.9 org.springframework spring-tx 5.3.9 org.projectlombok lombok 1.18.16 log4j log4j 1.2.17 com.github.pagehelper pagehelper 5.2.1 org.springframework spring-test 5.3.9 test
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql:///java2218?serverTimezone=UTC&useSSL=false&characterEncoding=UTF-8
jdbc.username=root
jdbc.password=root
package cn.kgc.sm.entity;import lombok.Data;@Data
public class User {private Integer uId;private String uName;private String uPassword;private Integer uState;}
package cn.kgc.sm.mapper;import cn.kgc.sm.entity.User;import java.util.List;public interface UserMapper {List selectAll();
}
package cn.kgc.sm.service;import cn.kgc.sm.entity.User;
import cn.kgc.sm.mapper.UserMapper;import java.util.List;public interface UserService {List selectAll();
}
package cn.kgc.sm.service.impl;import cn.kgc.sm.entity.User;
import cn.kgc.sm.mapper.UserMapper;
import cn.kgc.sm.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.List;
@Service
public class UserServiceImpl implements UserService {@AutowiredUserMapper userMapper;@Overridepublic List selectAll() {System.out.println("users = ");List users = userMapper.selectAll();System.out.println("users = " + users);return users;}
}
package cn.kgc.sm.mapper;import cn.kgc.sm.entity.User;
import cn.kgc.sm.service.UserService;
import junit.framework.TestCase;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;import java.util.List;@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:config/spring-config.xml")
public class UserMapperTest {@AutowiredUserService userService;@Testpublic void Test01(){List users = userService.selectAll();users.forEach(user -> System.out.println("user = " + user));
// for (User user : users) {
// System.out.println("user = " + user);
// }}}
运行结果:

码文不易,本篇文章就介绍到这里,如果想要学习更多Java系列知识,点击关注博主,博主带你零基础学习Java知识。与此同时,对于日常生活有困扰的朋友,欢迎阅读我的第四栏目:《国学周更—心性养成之路》,学习技术的同时,我们也注重了心性的养成。
