天天看点

mybatis plus配置mysql_mybatis-plus 的配置

1.首先新建一个springboot 项目

2.配置pom.xml文件

//这是自动配置pojo类的包,这样我们就不用再pojo 里面写set ,get方法,和构造方法

org.projectlombok

lombok

//这是mybatis-plus的包

com.baomidou

mybatis-plus-boot-starter

3.0.5

mysql

mysql-connector-java

runtime

org.springframework.boot

spring-boot-starter-jdbc

3.配置application.yml 文件

#这是配置服务的端口

server:

port:8082#配置项目的数据源

spring:

datasource:

username: root

password:123456#com.mysql.jdbc.Driver

driver-class-name: com.mysql.cj.jdbc.Driver

#高版本的mysql 会不写后面的 serverTimezone 会启动不了

url: jdbc:mysql://localhost:3306/spring?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8

mybatis-plus:

configuration:

# 是否开启自动驼峰命名规则(camelcase)映射,即从经典数据库列名 A_COLUMN(下划线命名) 到经典 Java 属性名 aColumn(驼峰命名) 的类似映射

map-underscore-to-camel-case: false# 输出日志文件

log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

global-config:

db-config:

#设置删除的标志,1为已删除的,0为未删除的

logic-delete-value: 1logic-not-delete-value: 0

4.编写pojo类(即实体类)这里以我创建的User为例子,同时数据库里面也要建一张user表。(博主用的是mysql)

packagecom.xbin.pojo;import com.baomidou.mybatisplus.annotation.*;importlombok.AllArgsConstructor;importlombok.Data;importlombok.NoArgsConstructor;importjava.util.Date;//生成get set 方法的注解

@Data//无参构造函数

@NoArgsConstructor//全参构造函数

@AllArgsConstructorpublic classUser {//id 的生成方式

@TableId(type =IdType.ID_WORKER)privateLong userId;privateString userName;privateString email;privateInteger countryId;privateInteger depId;privateDate create_time;privateDate update_time;privateInteger version;privateInteger deleted;

}

5.编写Dao类,博主这里用的是mapper这个名词来代替Dao,本质是一样的,只是命名方式不一样而已

packagecom.xbin.mapper;importcom.baomidou.mybatisplus.core.mapper.BaseMapper;importcom.xbin.pojo.User;importorg.springframework.stereotype.Repository;importorg.springframework.web.bind.annotation.ResponseBody;//注入到spring 容器中

@Repository//在对应的类上去继承BaseMapper

public interface UserMapper extends BaseMapper{//BaseMapper帮我们全部定制好了//这里不再需要写任何的crud代码

}

6.还要记得在主启动类加上扫描的注解(这个是坑,博主健忘,经常踩坑)

packagecom.xbin;importorg.mybatis.spring.annotation.MapperScan;importorg.springframework.boot.SpringApplication;importorg.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication//扫描mapper 包下面的所有mapper类

@MapperScan("com.xbin.mapper")public classDemoApplication {public static voidmain(String[] args) {

SpringApplication.run(DemoApplication.class, args);

}

}

7.在测试类里面测试(下面是博主的一些测试,有些注释掉的是后面一些知识点的测试)

packagecom.xbin;importcom.baomidou.mybatisplus.extension.plugins.pagination.Page;importcom.xbin.mapper.UserMapper;importcom.xbin.pojo.User;importorg.junit.jupiter.api.Test;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.boot.test.context.SpringBootTest;importjava.util.HashMap;importjava.util.List;

@SpringBootTestclassDemoApplicationTests {//自动注入userMapper

@Autowired

UserMapper userMapper;

@TestvoidcontextLoads() {

//不需要写sql语句,用userMapper.selectList就能查询出来数据

List users=userMapper.selectList(null);

users.forEach(System.out::println);

}//@Test//public void insertUser(){//User user = new User();//user.setUserName("大鹅");//user.setEmail("[email protected]");//user.setDepId(2);//

//int resultId=userMapper.insert(user);//System.out.println("resultId:"+resultId);//System.out.println("新建好的用户:"+user);//}//@Test//public void testOplock(){//User user=userMapper.selectById(1);//user.setEmail("[email protected]");//

//userMapper.updateById(user);//

//}//@Test//public void testOplock(){//User user=userMapper.selectById(1);//user.setEmail("[email protected]");//

//User user2=userMapper.selectById(1);//user2.setEmail("[email protected]");//userMapper.updateById(user2);//

//userMapper.updateById(user);//

//}//@Test//public void testPage() {//Page page = new Page(1, 5);//userMapper.selectPage(page, null);//

//System.out.println(page.getRecords().get(1));//}

@Testpublic voidtestDelete() {

HashMap delMap=new HashMap<>();

delMap.put("userId",1);

userMapper.deleteByMap(delMap);

}

}

OK, 这就是mybatis-plus 的基本使用,它可以简化很多繁琐的CRUD 操作,在开发中给我带来很多的方便。

有空继续更新。

只要学不死,就往死里学    ——呆马鸽子