基于SpringBoot的SSMP整合

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 本文介绍了如何使用Spring Boot结合Lombok、MyBatisPlus等技术快速搭建一个简单的Web应用。从创建项目、数据库表设计到实体类、Mapper、Service、Controller各层的开发,最后通过PostMan测试接口功能,详细记录了每一步的实现过程。

前言

  1. 实体类开发————使用Lombok快速制作实体类
  2. Mapper开发————整合MyBatisPlus,制作数据层测试
  3. Service开发————基于MyBatisPlus进行增量开发,制作业务层测试类
  4. 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,发送请求,得到数据与数据一一对应。


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

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
Java
30SpringBoot整合SpringData JPA
30SpringBoot整合SpringData JPA
50 0
|
7月前
|
XML SQL Java
Springboot整合
Springboot整合
|
7月前
|
XML Java 关系型数据库
springboot整合ssm详细讲解
springboot整合ssm详细讲解
188 1
|
7月前
|
前端开发 Java 数据处理
基于SpringBoot的SSMP整合案例
基于SpringBoot的SSMP整合案例
53 0
|
7月前
|
Java 前端开发 Maven
SpringBoot - WebJars
SpringBoot - WebJars
115 0
SpringBoot - WebJars
|
7月前
|
SQL Java 关系型数据库
SpringBoot整合SpringData与JPA
SpringBoot整合SpringData与JPA
82 0
|
监控 Dubbo Java
|
XML Java 数据格式
87.【SpringBoot-01】(二)
87.【SpringBoot-01】
59 0
|
监控 安全 Java
SpringBoot与MybatisPlus SpringBoot(四)
SpringBoot与MybatisPlus SpringBoot(四)
|
XML 移动开发 Java
SpringBoot与MybatisPlus SpringBoot(二)
SpringBoot与MybatisPlus SpringBoot(二)