基于SpringBoot的SSMP整合

科技公元 后端 最近

基于SpringBoot的SSMP整合

前言

  1. 实体类开发————使用Lombok快速制作实体类
  2. Mapper开发————整合MyBatisPlus,制作数据层测试
  3. Service开发————基于MyBatisPlus进行增量开发,制作业务层测试类
  4. Controller开发————基于Restful开发,使用PostMan测试接口功能

1、创建SpringBoot项目

基于SpringBoot的SSMP整合

2、创建数据库表

基于SpringBoot的SSMP整合

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,发送请求,得到数据与数据一一对应。

转载来源:https://juejin.cn/post/7133828172730073095

Apipost 私有化火热进行中

评论