这里是详细的讲解“IDEA项目使用SpringBoot+MyBatis-Plus的方法”的完整攻略,包含了两条示例。
准备条件
为了完成本攻略,你需要事先准备以下条件:
- JDK 8及以上版本
- IntelliJ IDEA 2020.3或以上版本
- Maven 3.0及以上版本
- SpringBoot 2.4.x版本
- MyBatis-Plus 3.x版本
- 数据库(本示例使用MySQL)
1. 创建项目
打开IntelliJ IDEA,选择“New -> Project”菜单项,打开“New Project”对话框。在对话框中选择“Spring Initializr”,然后按照提示进行配置,创建一个Spring Boot项目。
在项目创建过程中,选择需要使用的依赖和Spring Boot版本,这里需要勾选MyBatis-Plus和MySQL连接器依赖(如下图所示)。
等待项目创建完成。现在,你已经有了一个基本的Spring Boot项目,可以开始使用MyBatis-Plus了。
2. 配置数据库连接
在“application.properties”文件中,添加以下配置:
spring.datasource.url=jdbc:mysql://localhost:3306/test_db?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
其中,”spring.datasource.url”为数据库的连接地址,”spring.datasource.username”和”spring.datasource.password”为连接到数据库的用户名和密码。
3. 定义实体类和Mapper接口
在项目的src/main/java
目录下,创建com.example.demo.entity
和com.example.demo.mapper
包,分别用于存放实体类和Mapper接口代码。
接着,在com.example.demo.entity
包中定义一个实体类User
,如下所示:
@Data
public class User {
private Long id;
private String name;
private Integer age;
}
在com.example.demo.mapper
包中定义一个Mapper接口UserMapper
,该接口需要继承MyBatis-Plus的BaseMapper
接口,如下所示:
public interface UserMapper extends BaseMapper<User> {
}
4. 配置MyBatis-Plus
在“application.properties”文件中,添加以下配置:
# MyBatis-Plus配置
mybatis-plus.mapper-locations=classpath:mapper/*.xml
mybatis-plus.type-aliases-package=com.example.demo.entity
其中,”mybatis-plus.mapper-locations”为Mapper文件的存放路径,”mybatis-plus.type-aliases-package”为实体类的包名。
5. 编写Mapper XML文件
在项目的src/main/resources
目录下创建mapper
文件夹,并在mapper
文件夹中创建UserMapper.xml
文件,定义查询、插入、更新和删除数据的Mapper,如下所示:
<mapper namespace="com.example.demo.mapper.UserMapper">
<select id="selectById" resultType="com.example.demo.entity.User">
select id,name,age from t_user where id = #{id}
</select>
<insert id="insert" parameterType="com.example.demo.entity.User">
insert into t_user (id, name, age) values (#{id}, #{name}, #{age})
</insert>
<update id="updateById" parameterType="com.example.demo.entity.User">
update t_user set name = #{name}, age = #{age} where id = #{id}
</update>
<delete id="deleteById" parameterType="java.lang.Long">
delete from t_user where id = #{id}
</delete>
</mapper>
6. 编写Controller代码
在项目的src/main/java
目录下,创建com.example.demo.controller
包,并在该包下创建UserController
控制器类。
在UserController
类中,通过UserMapper
对象执行数据库操作,如下所示:
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
private UserMapper userMapper;
@GetMapping("/{id}")
public User getUserById(@PathVariable("id") Long id) {
return userMapper.selectById(id);
}
@PostMapping
public void addUser(@RequestBody User user) {
userMapper.insert(user);
}
@PutMapping("/{id}")
public void updateUser(@PathVariable("id") long id, @RequestBody User user) {
user.setId(id);
userMapper.updateById(user);
}
@DeleteMapping("/{id}")
public void deleteUser(@PathVariable("id") long id) {
userMapper.deleteById(id);
}
}
示例1:查询用户信息
启动应用,使用Postman或其他工具发送Http GET请求:http://localhost:8080/user/1
应该会返回一个JSON格式的响应,包含id、age、name属性的用户对象,如下所示:
{
"id": 1,
"name": "Alice",
"age": 18
}
示例2:插入用户信息
同样是使用Postman等工具,这次发送一个Http POST请求:http://localhost:8080/user
请求体为一个JSON格式的用户对象,如下所示:
{
"id": 2,
"name": "Bob",
"age": 20
}
执行完成后,应该会在数据库表t_user
中看到包含了这条记录。
结论
至此,我们已经完成了一个基于Spring Boot和MyBatis-Plus的的CURD操作示例程序。这只是这两个框架的简单入门,你可以根据自己的需求进行更多更为深入的学习。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:IDEA项目使用SpringBoot+MyBatis-Plus的方法 - Python技术站