扩展:SpringBoot+MyBatis框架+mysql数据库的整合(三版混用)

开发环境:

开发工具:Intellij IDEA 2017.2.3
JDK : 1.8.0_144
spring boot 版本 : 1.5.10.RELEASE
maven : 3.2.3

SpringBoot集成MyBatis加入基础依赖:

mybatis:

<!--mybatis-->
<dependency>
   <groupId>org.mybatis.spring.boot</groupId>
   <artifactId>mybatis-spring-boot-starter</artifactId>
   <version>1.3.1</version>
</dependency>
<!--通用mapper插件-->
<dependency>
   <groupId>tk.mybatis</groupId>
   <artifactId>mapper-spring-boot-starter</artifactId>
   <version>1.1.5</version>
</dependency>
MySQL:
<dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <version>5.1.38</version>
</dependency>

数据库配置:

application.yml
spring:
     datasource:
          url: jdbc:mysql://192.168.1.59:3306/test?useUnicode=true&characterEncoding=UTF-8
          username: root
          password: 123456
          driver-class-name: com.mysql.jdbc.Driver
在Mysql数据库中创建数据表:

CREATE DATABASE mytest;
 USE mytest; 
CREATE TABLE t_user(
      id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, 
      name VARCHAR(255) NOT NULL , 
      password VARCHAR(255) NOT NULL ,
      phone VARCHAR(255) NOT NULL ) ENGINE=INNODB AUTO_INCREMENT=1000 DEFAULT CHARSET=utf8;

MyBatis 配置文件配置
application.yml( 映射文件配置的位置
#初始化mybatis配置文件
mybatis:
     mapper-locations: classpath*:mapper/*Mapper.xml

#初始化自定义的接口mapper
mapper:
     mappers: com.test2.mapper.CommonMapper
     not-empty: false
     identity: MYSQL


使用Mybatis:

创建映射对象User
/** * User实体映射类 
     * Created by Administrator on 2017/11/24. 
     */ 
@Table (name = "t_user" )
public class User { 
     @Id
     private Integer id; 
     private String name; 
     private String password; 
     private String phone; 
     //省略 get 和 set ... 
}

实现自己的接口,继承通用的mapper
package com.test2.mapper;

import tk.mybatis.mapper.common.Mapper;
import tk.mybatis.mapper.common.MySqlMapper;

public interface CommonMapper<T> extends Mapper<T>,MySqlMapper<T> {
      //这里实现一个自己的接口,继承通用的mapper,关键点就是这个接口不能被扫描到(不加注解就不会被扫描到),
}


创建User映射的操作UserMapper,为了后续单元测试验证,实现插入和查询操作

@Mapper
public interface UserMapper extends CommonMapper<User>{

    public void insertw (@Param("name") String name,@Param("password") String password,@Param("phone") String phone);

    @Select("SELECT NAME FROM t_user where ID=#{id}")
    public String getnameBYid (@Param("id") Integer id);
}


映射文件配置
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-// mybatis.org//DTD Mapper 3.0//EN" " http://mybatis.org/dtd/mybatis-3-mapper.dtd";> ;
<mapper namespace="com.test2.mapper.UserMapper">

    <insert id=" insertw ">
        INSERT INTO t_user(NAME,PASSWORD,PHONE) VALUES (#{name},#{password},#{phone})
    </insert>

</mapper>
创建单元测试:


@RunWith(SpringRunner.class)
@SpringBootTest
public class Demo2ApplicationTests {

   @Autowired
   private UserMapper userMapper;

   @Test
   public void insert(){
      User user = new User();
      user.setName("aaa");
      user.setPassword("222222");
      user.setPhone("123456");
      userMapper. insert (user); //此方法为通用mapper接口种默认提供的方法
   }
   @Test
   public void insertw(){
      userMapper. insertw ("qq","qq","qq");
   }
   @Test
   public void getnameBYid(){
      System.out.println(userMapper. getnameBYid (1012));
   }

}








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值