博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java之mybatis整合spring
阅读量:5038 次
发布时间:2019-06-12

本文共 5794 字,大约阅读时间需要 19 分钟。

这篇讲解spring+mybatis的整合。

目录结构:

一. 整合spring的第一种方法

1. 新建 java 项目 : spring_mybatis

2.导入jar 包-----spring和mybatis的整合包,然后build

aopalliance.jaraspectjweaver.jarcommons-logging.jarmybatis-3.2.7.jarmybatis-spring-1.2.3.jarmysql-connector-java-5.1.20-bin.jarspring-aop-4.1.6.RELEASE.jarspring-aspects-4.1.6.RELEASE.jarspring-beans-4.1.6.RELEASE.jarspring-context-4.1.6.RELEASE.jarspring-core-4.1.6.RELEASE.jarspring-expression-4.1.6.RELEASE.jarspring-jdbc-4.1.6.RELEASE.jarspring-orm-4.1.6.RELEASE.jarspring-tx-4.1.6.RELEASE.jarspring-web-4.1.6.RELEASE.jarspring-webmvc-4.1.6.RELEASE.jar

3.编写 vo 类

在cn.vincent.vo下 User.java

1 package cn.vincent.vo; 2  3 import java.io.Serializable; 4  5 public class User implements Serializable { 6  7     private int id; 8     private String name; 9     private int age;10     private int rileId;11     public int getId() {12         return id;13     }14     public void setId(int id) {15         this.id = id;16     }17     public String getName() {18         return name;19     }20     public void setName(String name) {21         this.name = name;22     }23     public int getAge() {24         return age;25     }26     public void setAge(int age) {27         this.age = age;28     }29     public int getRileId() {30         return rileId;31     }32     public void setRileId(int rileId) {33         this.rileId = rileId;34     }35     @Override36     public String toString() {37         return "User [id=" + id + ", name=" + name + ", age=" + age38                 + ", rileId=" + rileId + "]";39     }40     41     42 }
View Code

4.编写 映射文件

在cn.vincent.mapper下 UserMapper.xml

5.编写 dao

在cn.vincent.mapper下 UserMapper.java

package cn.vincent.mapper;import java.util.List;import cn.vincent.vo.User;public interface UserMapper {    public List
findAll();}

在cn.vincent.mapper.impl下 UserMapperImpl.java

package cn.vincent.mapper.impl;import java.util.List;import org.apache.ibatis.session.SqlSession;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Repository;import cn.vincent.mapper.UserMapper;import cn.vincent.vo.User;@Repository("userMapper")public class UserMapperImpl implements UserMapper {    @Autowired    private SqlSession sqlSession;    public void setSqlSession(SqlSession sqlSession){        this.sqlSession=sqlSession;    }        @Override    public List
findAll() { return sqlSession.selectList("cn.vincent.mapper.UserMapper.findAll"); } }

6.编写 service

在 cn.vincent.service下 UserService.java

package cn.vincent.service;import java.util.List;import cn.vincent.vo.User;public interface UserService {    public List
findAll();}

在 cn.vincent.service下 UserServiceImpl.java

package cn.vincent.service.impl;import java.util.List;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;import cn.vincent.mapper.UserMapper;import cn.vincent.service.UserService;import cn.vincent.vo.User;@Service("userService")public class UserServiceImpl implements UserService {    @Autowired    private UserMapper userMapper;            public void setUserMapper(UserMapper userMapper) {        this.userMapper = userMapper;    }    @Override    public List
findAll() { return userMapper.findAll(); } }

7. 编写mybatis的配置文件

mybatis.cfg.xml

8. 编写spring的配置文件

beans.xml

jdbc.properties

driver=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/testusername=rootpassword=root

9.添加测试

在 test下的 cn.vincent.service下的 UserServiceTest.java

package cn.vincent.service;import java.util.List;import org.junit.Test;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import cn.vincent.vo.User;public class UserServiceTest {    @Test    public void testFindAll(){        ApplicationContext ac=new ClassPathXmlApplicationContext("beans.xml");        UserService userService=ac.getBean(UserService.class);        List
list=userService.findAll(); for(User u:list){ System.out.println(u); } }}

10. 运行测试

效果如下:

二. 第二种是去掉mybatis配置文件的配置方法

在beans.xml中修改 SqlSessionFactory的配置

classpath:cn/vincent/mapper/UserMapper.xml

三. 可以通过代理的方式来生成实现类的配置

beans.xml

classpath:cn/sxt/mapper/UserMapper.xml

github地址:

转载于:https://www.cnblogs.com/Vincent-yuan/p/11298922.html

你可能感兴趣的文章
00.敏捷回顾——引言笔记
查看>>
3.2.3.1 匹配单个字符
查看>>
字符串逆序的方法
查看>>
该类型的 CollectionView 不支持从调度程序线程以外的线程对其 SourceCollection 进行的更改。...
查看>>
C50和机器学习
查看>>
Java中this用法总结
查看>>
Sharepoint学习笔记—习题系列--70-573习题解析 -(Q28-Q31)
查看>>
关于使用Timer定时监测网络是否ping通
查看>>
定时器setTimeout()的传参方法
查看>>
导出成WORD文档(转)
查看>>
MyCat 枚举分片设计思考,查询命中条件
查看>>
selenium 截图 java、python、ruby,
查看>>
Maven 的聚合
查看>>
sbt使用详解
查看>>
Mybatis初步
查看>>
vue+uwsgi+nginx部署luffty项目
查看>>
ios晋级之路-CALayer以及动画CABaseAnimation
查看>>
一、SQLite的介绍
查看>>
oo第四次总结感悟
查看>>
redis 数据类型详解 以及 redis适用场景场合
查看>>