从零搭建SpringBoot+MyBatisPlus快速开发脚手架
在实际开发中,我们经常需要使用SpringBoot和MyBatisPlus来快速开发应用程序。本文将手把手教你如何从零开始搭建SpringBoot+MyBatisPlus快速开发脚手架,包括创建项目、添加依赖、配置数据源、创建实体类、创建Mapper接口、使用MyBatisPlus的CRUD操作等。
1. 创建项目
首先,我们需要创建一个SpringBoot项目。可以使用Spring Initializr来创建项目,也可以使用IDEA等开发工具来创建项目。以下是使用Spring Initializr创建项目的步骤:
- 打开Spring Initializr网站(https://start.spring.io/)。
- 选择项目的基本信息,比如项目名称、项目类型、项目包名等。
- 添加项目的依赖,比如Spring Web、MyBatisPlus等。
- 点击“Generate”按钮生成项目。
2. 添加依赖
在创建项目后,我们需要添加MyBatisPlus的依赖。可以在pom.xml文件中添加以下依赖:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.3.1</version>
</dependency>
3. 配置数据源
在使用MyBatisPlus之前,我们需要配置数据源。可以在application.properties文件中添加以下配置:
# 数据源配置
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=root
在上面的配置中,我们指定了MySQL数据库的驱动、URL、用户名和密码。
4. 创建实体类
在配置数据源后,我们需要创建实体类。可以使用Lombok来简化实体类的编写。以下是一个示例:
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("user")
public class User {
@TableId(type = IdType.AUTO)
private Long id;
private String name;
private Integer age;
}
在上面的示例中,使用@Data注解自动生成getter和setter方法,使用@NoArgsConstructor和@AllArgsConstructor注解自动生成无参和有参构造方法,使用@TableName注解指定实体类对应的数据库表名,使用@TableId注解指定实体类对应的主键字段。
5. 创建Mapper接口
在创建实体类后,我们需要创建Mapper接口。可以使用MyBatisPlus的BaseMapper接口来简化Mapper接口的编写。以下是一个示例:
public interface UserMapper extends BaseMapper<User> {
}
在上面的示例中,使用BaseMapper接口来继承UserMapper接口,从而实现对User实体类的CRUD操作。
6. 使用MyBatisPlus的CRUD操作
在创建Mapper接口后,我们可以使用MyBatisPlus的CRUD操作来操作数据库。以下是一些示例:
// 插入数据
User user = new User();
user.setName("张三");
user.setAge(20);
userMapper.insert(user);
// 更新数据
User user = userMapper.selectById(1L);
user.setName("李四");
userMapper.updateById(user);
// 删除数据
userMapper.deleteById(1L);
// 查询数据
List<User> userList = userMapper.selectList(null);
在上面的示例中,使用insert方法插入数据,使用updateById方法更新数据,使用deleteById方法删除数据,使用selectList方法查询数据。
7. 示例
以下是一个完整的示例,包括创建实体类、创建Mapper接口、使用MyBatisPlus的CRUD操作等:
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("user")
public class User {
@TableId(type = IdType.AUTO)
private Long id;
private String name;
private Integer age;
}
public interface UserMapper extends BaseMapper<User> {
}
@RestController
public class UserController {
@Autowired
private UserMapper userMapper;
@PostMapping("/user")
public int insert(@RequestBody User user) {
return userMapper.insert(user);
}
@PutMapping("/user/{id}")
public int update(@PathVariable Long id, @RequestBody User user) {
user.setId(id);
return userMapper.updateById(user);
}
@DeleteMapping("/user/{id}")
public int delete(@PathVariable Long id) {
return userMapper.deleteById(id);
}
@GetMapping("/user")
public List<User> findAll() {
return userMapper.selectList(null);
}
@GetMapping("/user/{id}")
public User findById(@PathVariable Long id) {
return userMapper.selectById(id);
}
}
在上面的示例中,创建了一个User实体类和一个UserMapper接口,然后在UserController中使用了MyBatisPlus的CRUD操作来操作数据库。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:从零搭建SpringBoot+MyBatisPlus快速开发脚手架 - Python技术站