springboot实现添加用户到数据库的功能

简介: springboot实现添加用户到数据库的功能

要实现添加用户的功能,需要编写对应的代码:

如:

  1. 在UserEntity中定义用户实体类的属性。
  2. 在UserMapper中编写添加用户的SQL语句,并通过MyBatis-Plus提供的BaseMapper接口实现增删改查操作。
  3. 在UserService中编写添加用户的逻辑,也就是调用UserMapper中的方法实现添加用户的功能。
  4. 在User Controller中定义添加用户的接口,并将请求参数传递给UserService中的方法。

具体操作:

1、UserEntity.java

package com.example.demo.entity;
import javax.persistence.*;
@Entity
@Table(name = "users")
public class UserEntity {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    @Column(nullable = false, unique = true)
    private String username;
    @Column(nullable = false)
    private String password;
    @Column(nullable = false)
    private String name;
    @Column(nullable = false)
    private String

2、UserMaper.java

package com.tscabinet.mapper;
import com.tscabinet.entity.UserEntity;
import org.apache.ibatis.annotations.*;
@Mapper
public interface UserMapper {
    @Insert("INSERT INTO tskj_user (name, username, role, avatar, status, password) " +
            "VALUES (#{name}, #{username}, #{role}, #{avatar}, #{status}, #{password})")
    @Options(useGeneratedKeys = true, keyProperty = "id")
    void addUser(UserEntity user);
}

MyBatis 的注解,用于向数据库中插入一条用户数据的 SQL 语句。具体来说:

  • @Insert 注解表示该方法对应的是一个 SQL 的插入操作。
  • INSERT INTO tskj_user (name, username, role, avatar, status, password) 表示要插入的表是 tskj_user,插入的列包括 name、username、role、avatar、status、password。
  • VALUES (#{name}, #{username}, #{role}, #{avatar}, #{status}, #{password}) 表示插入的值分别是 user 对象的 name、username、role、avatar、status、password 属性的值。
  • @Options 注解表示一些选项,这里的 useGeneratedKeys 表示使用自动生成的主键(在数据库中设置主键自动增长),而 keyProperty 表示将自动生成的主键赋值给 user 对象的 id 属性。
  • 最后,void addUser(UserEntity user) 方法的参数是 UserEntity 对象,即要插入的用户数据。

 

3、UserService.java

@Service
public class UserService {
    @Autowired
    private UserMapper userMapper;
    public void addUser(UserEntity user) {
        userMapper.addUser(user);
    }
}

4、UserController.java

@RestController
@RequestMapping("/users")
public class UserController {
    @Autowired
    private UserService userService;
    @PostMapping
    public void addUser(@RequestBody UserEntity user) {
        userService.addUser(user);
    }
}

基于Spring Boot和MyBatis的。如果您还没有集成这些技术,您需要先进行集成;

5、Postman测试

使用Post请求提交表单, Postman 中选择 POST 请求,并在 Body 标签页中选择 x-www-form-urlencoded,然后填写参数,点击 Send 发送请求。

测试结果:

完成!!!

相关文章
|
5天前
|
消息中间件 缓存 Java
手写模拟Spring Boot启动过程功能
【11月更文挑战第19天】Spring Boot自推出以来,因其简化了Spring应用的初始搭建和开发过程,迅速成为Java企业级应用开发的首选框架之一。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,帮助读者深入理解其工作机制。
21 3
|
5天前
|
Java 开发者 微服务
手写模拟Spring Boot自动配置功能
【11月更文挑战第19天】随着微服务架构的兴起,Spring Boot作为一种快速开发框架,因其简化了Spring应用的初始搭建和开发过程,受到了广大开发者的青睐。自动配置作为Spring Boot的核心特性之一,大大减少了手动配置的工作量,提高了开发效率。
22 0
|
19天前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。首先,创建并配置 Spring Boot 项目,实现后端 API;然后,使用 Ant Design Pro Vue 创建前端项目,配置动态路由和菜单。通过具体案例,展示了如何快速搭建高效、易维护的项目框架。
95 62
|
14天前
|
SQL Java 数据库连接
深入 MyBatis-Plus 插件:解锁高级数据库功能
Mybatis-Plus 提供了丰富的插件机制,这些插件可以帮助开发者更方便地扩展 Mybatis 的功能,提升开发效率、优化性能和实现一些常用的功能。
95 26
深入 MyBatis-Plus 插件:解锁高级数据库功能
|
15天前
|
Java 数据库连接 测试技术
SpringBoot入门(4) - 添加内存数据库H2
SpringBoot入门(4) - 添加内存数据库H2
55 13
|
10天前
|
Java 数据库连接 测试技术
SpringBoot入门(4) - 添加内存数据库H2
SpringBoot入门(4) - 添加内存数据库H2
26 4
|
15天前
|
前端开发 Java easyexcel
SpringBoot操作Excel实现单文件上传、多文件上传、下载、读取内容等功能
SpringBoot操作Excel实现单文件上传、多文件上传、下载、读取内容等功能
55 8
|
17天前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,帮助开发者提高开发效率和应用的可维护性。
35 2
|
17天前
|
XML 数据库 数据格式
数据库 校验名称唯一性,用于新增和修改功能
数据库 校验名称唯一性,用于新增和修改功能
32 1
|
12天前
|
存储 安全 Java
springboot当中ConfigurationProperties注解作用跟数据库存入有啥区别
`@ConfigurationProperties`注解和数据库存储配置信息各有优劣,适用于不同的应用场景。`@ConfigurationProperties`提供了类型安全和模块化的配置管理方式,适合静态和简单配置。而数据库存储配置信息提供了动态更新和集中管理的能力,适合需要频繁变化和集中管理的配置需求。在实际项目中,可以根据具体需求选择合适的配置管理方式,或者结合使用这两种方式,实现灵活高效的配置管理。
10 0