一、导入用到的依赖(MyBatis-plus、MySQL、Lombok)
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId> <optional>true</optional>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
二、配置数据库的数据源
server:
port: 8080
spring:
datasource:
type: com.zaxxer.hikari.HikariDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/test2_1?characterEncoding=utf-8&useSSL=false
username: root
password: 123456
三、建立实体类,DAO类、Controller类
1.创建实体类并与数据库关联
package com.example.hello.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("t_user")
public class User {
@TableId
private Long id;
private String userName;
private String passwd;
}
2.创建dao继承自BaseMapper
package com.example.hello.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.hello.entity.User;
public interface UserDAO extends BaseMapper<User> {
}
四、在启动类上扫描DAO类
五、在controller中测试
1.通过Autowired注解实例化DAO对象
2.调用dao方法进行增删改查
@Autowired(required = false)
private UserDAO dao;
@RequestMapping("/test1")
public int delete(){
int count = dao.deleteById(new User(1592370026362036226l, "tom", "123456"));
return count;
}
@RequestMapping("/test2")
public List<User> test3(){
List<User> users = dao.selectList(null);
return users;
}
@RequestMapping("/test3")
public int test4(){
return dao.updateById(new User(1592409116948156417l,"mike","321"));
}
@RequestMapping("/t1")
public int test2(){
return dao.insert(new User(null,"tom","123456"));
}
@RequestMapping("/t5")
public int test5(){
return dao.deleteBatchIds(Arrays.asList(1592409116948156417l,1592420098994987009l,1592420099854819329l,1592420100777566210l,1592420101700313090l));
}