SpringBoot+mybatis plus 框架搭建
1、引入引用
<?xml version="1.0" encoding="UTF-8"?>4.0.0 org.springframework.boot spring-boot-starter-parent 2.6.2 com.ymn mybatis003 0.0.1-SNAPSHOT mybatis003 mybatis003 1.8 org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-starter-test test com.baomidou mybatis-plus-boot-starter 3.4.3.4 mysql mysql-connector-java runtime com.h2database h2 runtime org.projectlombok lombok RELEASE compile junit junit 4.13.1 test org.springframework.boot spring-boot-maven-plugin
2、配置数据库连接地址
# DataSource Config
server:
port: 8099
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/mybatisplus02?autoRe
connect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&nullCatalogMeansCurrent=true
username: root
password: 545456546546
3、创建mapper
@Component public interface UserMapper extends BaseMapper{ }
4、创建service访问
@Component public interface UserMapper extends BaseMapper{ }
5、单元测试测试
package com.ymn.mybatis003;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ymn.mybatis003.entitys.User;
import com.ymn.mybatis003.mappers.UserMapper;
import com.ymn.mybatis003.services.UserService;
import org.junit.Assert;
import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.List;
//有了@RunWith(SpringRunner.class)这些类才能实例化到spring容器中,自动注入才能生效,
@RunWith(SpringRunner.class)
@SpringBootTest
class Mybatis003ApplicationTests {
@Autowired
private UserMapper userMapper;
@Autowired
private UserService userService;
@Test
public void testSelect() {
System.out.println(("----- selectAll method test ------"));
ListuserList = userMapper.selectList(null);
//Assert.assertEquals(5, userList.size());
userList.forEach(System.out::println);
userList.get(0).setName("王五77");
//Update name by id
userMapper.updateById(userList.get(0));
//query user by id
User user = userMapper.selectById(4);
System.out.println("编号为4的用户:"+user.getName());
//use wrapper query
QueryWrapperqueryWrapper = new QueryWrapper<>();
queryWrapper.eq("id",5);
User user5 = userMapper.selectOne(queryWrapper);
System.out.println("第五名用户");
System.out.println(user5);
//query count
QueryWrapperqueryWrapper1 = new QueryWrapper<>();
queryWrapper1.gt("age",10);
Long count = userMapper.selectCount(queryWrapper1);
System.out.println("大于10岁的用户数:"+count);
User user3 = userService.getById(1);
System.out.println("使用service获取对象");
System.out.println(user3);
LambdaQueryWrapperlamadaQueryWrapper = new LambdaQueryWrapper<>();
lamadaQueryWrapper.eq(User::getId,9);
User user9 = userService.getOne(lamadaQueryWrapper);
System.out.println("第九个用户的名称:"+user9.getName());
}
}
6、sql语句