MyBatisPlus概述
需要的基础:把我的MyBatis、Spring、SpringMVC就可以学习这个了!
MyBatisPlus就是在Mybatis基础上简化MyBatis
学习MyBatisPlus可以节省我们大量工作时间,所有的CRUD代码它都可以自动完成!大家可以去官网了解
快速入门
1.导入对应的依赖
创建一个springboot项目,导入下面依赖
<!--数据库驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!--lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<!--mybatis—plus-->
<!--mybatis-plus是自己开发的,并非官方的-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.0.5</version>
</dependency>
注:使用mybatis-plus可以节省我们大量的代码,尽量不要同时导入mybatis和mybatis-plus
2.连接数据库
在application.properties配置
#mysql 5 驱动不同 com.mysql.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=123
spring.datasource.url=jdbc:mysql://localhost:3306/t248?useUnicode=true&characterEncoding=utf8
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
#mysql 8 驱动不同 com.mysql.cj.jdbc.Driver 需要增加时区的配置
#spring.datasource.url=jdbc:mysql://localhost:3306/t248?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false
3.在model创建一个TSysUser类
注:创建实体类名字要和表名一样,首字母大写没关系 我的数据库表名是t_sys_user,要去前面的_,后面字母就要大写
@Data
@AllArgsConstructor
@NoArgsConstructor
public class TSysUser {
private Integer userid;
private String username;
private String password;
private String salt;
private Date createdate;
}
4.在mapper创建一个UserMapper
// 在对应的Mapper上面继承基本的类 BaseMapper
@Repository //代表持久层
public interface UserMapper extends BaseMapper<TSysUser>{
//所有的CRUD操作都已经编写完成了
//不需要像以前配置一大堆文件了!
}
5.在启动类添加扫描注解
//扫描我们的mapper文件夹
@MapperScan("com.zking.myplus.mapper")
@SpringBootApplication
public class MyplusApplication {
public static void main(String[] args) {
SpringApplication.run(MyplusApplication.class, args);
}
}
6.在测试类测试
@SpringBootTest
class MyplusApplicationTests {
//继承了BaseMapper,所有的方法都来自父类
//我们也可以编写自己的方法
@Autowired
private UserMapper userMapper;
@Test
void contextLoads() {
//参数是一个Wrapper,条件构造函数,这里我们先不用,先写个null
//查询所有方法
List<TSysUser> users = userMapper.selectList(null);
//forea输出
for (TSysUser user : users) {
System.out.println(user);
}
}
}
结果
简单的入门就完成了。