文章目录
前言
上篇我们已经定义好了数据库表users和用户管理功能的HTTP接口,本篇我们按照接口进行springboot后端开发实现,然后使用postman工具调试接口。
一、后端代码实现
1.实现pojo/User.java
pojo目录定义数据结构
User.java定义user的数据结构,代码如下:
package com.example.demo.pojo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.time.LocalDateTime;
@Data
public class User {
private Integer id;//主键ID
private String username;//用户名
private String password;//密码
private String nickname;//昵称
private String email;//邮箱
@JsonFormat(pattern ="yyyy-MM-dd HH:mm:ss")
private LocalDateTime create_time;//创建时间
@JsonIgnore
private Integer create_user;//创建人
private String create_username;//创建人名称}
注意:
1、这里要定义所有操作用到的字段,而不仅仅只是数据库中定义的字段,比如create_username是查询需要返回的字段,也需要定义。
2、而create_user增加操作的时候由后端自动填充,查询操作时又不需要返回,可以增加@JsonIgnore注解,意思是UserController类使用json格式时不带它。
2.实现mapper/UserMapper.java
mapper目录实现数据库操作
UserMapper.java使用mybatis插件直接使用sql语句操作数据库表users,代码如下:
package com.example.demo.mapper;
import org.apache.ibatis.annotations.*;
import com.example.demo.pojo.User;
import java.util.List;
@Mapper
public interface UserMapper {
@Select("select * from users where username=#{username}")
User findByUserName(String username);
@Select("select A.*, B.username create_username from users A left join users B on A.create_user = B.id")
List<User>selectAll();
@Insert("insert into users(username,password,nickname,email,create_time,create_user) "+"values(#{username},#{password},#{nickname},#{email},#{create_time},#{create_user})")voidadd(User user);
@Update("update users set username=#{username},nickname=#{nickname},email=#{email} where id=#{id}")voidupdate(User user);
@Delete("delete from users where id in (#{ids})")voiddeleteById(String ids)
版权归原作者 段鸿潭 所有, 如有侵权,请联系我们删除。