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

21 篇文章 0 订阅
20 篇文章 0 订阅

目录

1、UserEntity.java 

2、UserMaper.java

3、UserService.java

4、UserController.java

5、Postman测试


 

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

如:

  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 发送请求。

测试结果:

完成!!! 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
实现导入并存到数据库功能,可以按照以下步骤进行: 1. 创建一个上传文件的表单页面,让用户可以选择需要导入的文件。 2. 创建一个Controller,接收前端传过来的文件,并进行处理。可以使用Spring Boot提供的MultipartFile类来处理文件上传。 3. 在Controller中,可以使用Apache POI或其他相关的工具来读取上传的Excel文件,并将数据存储到一个List或其他集合中。 4. 创建一个Service类,将读取到的数据进行处理,并将数据存储到数据库中。可以使用Spring Boot提供的JPA或MyBatis等框架来操作数据库。 5. 在Controller中调用Service类的方法,将数据存储到数据库中。 下面是一个简单的示例代码: 1. 在前端页面中添加一个上传文件的表单: ```html <form method="POST" action="/upload" enctype="multipart/form-data"> <input type="file" name="file" /> <button type="submit">上传</button> </form> ``` 2. 在Controller中接收上传的文件,并进行处理: ```java @Controller public class UploadController { @Autowired private UploadService uploadService; @PostMapping("/upload") public String upload(@RequestParam("file") MultipartFile file) { List<User> users = uploadService.readUsersFromExcel(file); uploadService.saveUsers(users); return "upload-result"; } } ``` 3. 在Service中进行数据处理和存储: ```java @Service public class UploadService { @Autowired private UserRepository userRepository; public List<User> readUsersFromExcel(MultipartFile file) { List<User> users = new ArrayList<>(); try (InputStream is = file.getInputStream()) { Workbook workbook = WorkbookFactory.create(is); Sheet sheet = workbook.getSheetAt(0); for (Row row : sheet) { User user = new User(); user.setName(row.getCell(0).getStringCellValue()); user.setAge(row.getCell(1).getNumericCellValue()); users.add(user); } } catch (IOException | InvalidFormatException e) { e.printStackTrace(); } return users; } public void saveUsers(List<User> users) { userRepository.saveAll(users); } } ``` 这是一个简单的示例,具体实现可以根据实际需求进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

丘比特惩罚陆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值