前言
实体类开发————使用 Lombok 快速制作实体类
Mapper 开发————整合 MyBatisPlus,制作数据层测试
Service 开发————基于 MyBatisPlus 进行增量开发,制作业务层测试类
Controller 开发————基于 Restful 开发,使用 PostMan 测试接口功能
1、创建 SpringBoot 项目
2、创建数据库表
3、导入所需坐标
<!--lombok--><dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId></dependency>
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.3</version></dependency>
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.2.6</version></dependency>
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope></dependency>
复制代码
4、实体层开发
创建 User 类,属性与数据表一一对应,用 lombok 的 Data 注解简化 getset 方法,当表名与类名不同时,用 @TableName("ssmp") 注解形成映射。
package com.example.ssmp.Entity;
import com.baomidou.mybatisplus.annotation.TableName;import lombok.Data;
@Data@TableName("ssmp") //表名public class User { private Integer id; private String name; private double price;}
复制代码
5、Mapper 数据层开发
1)导入坐标
导入 MyBatisPlus 与 Druid 对应的 starter,当然 mysql 的驱动不能少,在前面导入坐标时,已经导入相对应的坐标。
2)配置数据库连接信息
server: port: 10086spring: datasource: druid: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/test?serverTimezone=UTC username: root password: root
复制代码
3)创建 UserMapper 类
使用 MyBatisPlus 的标准通用接口 BaseMapper 加速开发
@Mapper 注解和泛型的指定
package com.example.ssmp.Mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.ssmp.Entity.User;
import org.apache.ibatis.annotations.Mapper;
@Mapper // 声明这是一个 Mapper
public interface UserMapper extends BaseMapper<User>
{
}
4)编写测试类
@SpringBootTestpublic class Test { @Autowired private UserMapper userMapper; @Test void testGetById(){ System.out.println(bookDao.userMapper(1)); } @Test void testSave(){ User user = new User(); user.setName("测试"); user.setPrice("1888"); userMapper.insert(user); } }
复制代码
6、Service 业务层开发
用 MyBatis-Plus 实现业务层快速开发
1)创建 IUserService 接口
接口继承 IService 接口,mybatisplus 提供的,实现了增删改查的方法
package com.example.ssmp.Service;import com.baomidou.mybatisplus.extension.service.IService;import com.example.ssmp.Entity.User;public interface UserService extends IService<User> { }
复制代码
2)创建 IUserService 实现类
extends ServiceImpl<UserMapper,User> MyBatisPlus 提供的
package com.example.ssmp.Service.Impl;import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;import com.example.ssmp.Entity.User;import com.example.ssmp.Mapper.UserMapper;import com.example.ssmp.Service.UserService;import org.springframework.stereotype.Service;@Servicepublic class UserServiceImpl extends ServiceImpl<UserMapper,User> implements UserService {}
复制代码
7、Controller 控制层开发
package com.example.ssmp.Controller;import com.example.ssmp.Entity.User;import com.example.ssmp.Service.UserService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;import java.util.List;@RestController@RequestMapping("/user")public class UserController { @Autowired private UserService userService; @GetMapping public List<User> getAll(){ return userService.list(); }}
复制代码
8、测试
打开 Apifox 或者 Postman,发送请求,得到数据与数据一一对应。
总结
SSMP,SpringBoot 和 MyBatis-Plus 的出现大大简化了我们的开发,提升了开发效率,切记过度依赖。。。
评论