前言
- 实体类开发————使用Lombok快速制作实体类
- Mapper开发————整合MyBatisPlus,制作数据层测试
- Service开发————基于MyBatisPlus进行增量开发,制作业务层测试类
- Controller开发————基于Restful开发,使用PostMan测试接口功能
1、创建SpringBoot项目
2、创建数据库表
3、导入所需坐标
xml
代码解读
复制代码
<!--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") 注解形成映射。
kotlin
代码解读
复制代码
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)配置数据库连接信息
yaml
代码解读
复制代码
server:
port: 10086
spring:
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注解和泛型的指定
java
- 代码解读
- 复制代码
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)编写测试类
typescript
代码解读
复制代码
@SpringBootTest
public 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提供的,实现了增删改查的方法
java
代码解读
复制代码
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提供的
scala
代码解读
复制代码
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;
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper,User> implements UserService {
}
7、Controller控制层开发
- @RestController Controller控制类专用的注解
- @CrossOrigin 解决跨域的问题
- @Autowired 需要将Service接口依赖注入进来
- @RequestMapping("/") 可以设置访问路径
kotlin
代码解读
复制代码
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,发送请求,得到数据与数据一一对应。