Rumah >Java >javaTutorial >Bagaimana springboot melaksanakan fungsi carian nama pengguna

Bagaimana springboot melaksanakan fungsi carian nama pengguna

王林
王林ke hadapan
2023-05-13 08:58:051248semak imbas

Untuk melaksanakan fungsi menanyakan pengguna berdasarkan nama pengguna, kita perlu menulis beberapa kelas dalam rangka kerja but spring:

1 kelas UserEnetity

Ia ialah kelas entiti berdasarkan jadual pangkalan data Digunakan untuk merangkum maklumat asas pengguna. Dalam jadual ini, atribut berkaitan pengguna perlu ditakrifkan dan kaedah getter dan setter disediakan.

public class UserEntity {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int id;
 
    private String name;
 
 
    public String getUsername() {
        return username;
    }
 
    public void setUsername(String username) {
        this.username = username;
    }
 
    private String username;
 
 
    private int role;
    private String avatar;
    private int status;
    private String password;
 
 
    public UserEntity(int id, String name, int role, String avatar, int status, String password,String username,String token) {
        this.id = id;
        this.name = name;
        this.role = role;
        this.avatar = avatar;
        this.status = status;
        this.password = password;
        this.username = username;
    }
 
    public UserEntity() {
 
    }
 
 
    public int getId() {
        return id;
    }
 
    public void setId(int id) {
        this.id = id;
    }
 
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
 
 
    public int getRole() {
        return role;
    }
 
    public void setRole(int role) {
        this.role = role;
    }
 
    public String getAvatar() {
        return avatar;
    }
 
    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }
 
    public int getStatus() {
        return status;
    }
 
    public void setStatus(int status) {
        this.status = status;
    }
 
    public String getPassword() {
        return password;
    }
 
    public void setPassword(String password) {
        this.password = password;
    }
}

2. Kelas UserMapper

Ia adalah antara muka berdasarkan MyBatis dan digunakan untuk mentakrifkan kaedah untuk operasi pangkalan data, seperti menyoal pengguna, menambah pengguna, mengemas kini pengguna, dsb.

@Mapper
public interface UserMapper extends BaseMapper {
    List<UserEntity> findAllUser();
 
    UserDTO getUserByUsername(String subject);
}

3. Kelas UserService

Ia adalah lapisan logik perniagaan, yang bertanggungjawab terutamanya untuk menyelaraskan hubungan antara kelas UserMapper dan kelas Entiti Pengguna dan merealisasikan pemprosesan logik perniagaan. Dalam kelas ini, anda perlu menentukan kaedah untuk menanyakan pengguna berdasarkan nama pengguna mereka dan memanggil kaedah kelas UserMapper untuk melaksanakan operasi pertanyaan.

   //用户名查询用户
    public ResultResponse findByUsername(String name) {
        QueryWrapper<UserEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("name", name);
        UserEntity user = (UserEntity) userMapper.selectOne(queryWrapper);
        if (user != null) {
            return ResultResponse.returnToken(ResultResponse.success("查询成功", user));
        } else {
            return ResultResponse.returnToken(ResultResponse.fail("查询失败,该用户不存在"));
        }
    }

4. Kelas UserController

Ia ialah lapisan pengawal, digunakan untuk memproses permintaan pengguna dan mengembalikan hasil yang sepadan. Dalam kelas ini, anda perlu menentukan kaedah pemprosesan permintaan, seperti kaedah untuk menanyakan pengguna berdasarkan nama pengguna dan mengembalikan data dalam format JSON.

   //根据用户名查询用户--查询结果分每页十条显示
    @GetMapping("user/findByUsername")
    public ResultResponse<IPage<UserEntity>> findByUsername(@RequestParam String username,
                                                            @RequestParam Integer pageNumber,
                                                            @RequestParam Integer pageSize) {
        Page<UserEntity> userPage = new Page<>(pageNumber, pageSize);
//        IPage<UserEntity> user = (IPage<UserEntity>) userService.selectByUsername(userPage, username);
        UserEntity user = userService.selectByUsername(userPage,username);
 
        if (user == null) {
            return ResultResponse.error("没有找到匹配的用户");
        }
        return ResultResponse.ok("查询成功",user);
    }

Ringkasnya, empat kelas ini perlu ditulis, dan hubungan antara mereka juga perlu direka bentuk. Antaranya, kelas Entiti Pengguna dan kelas UserMapper mempunyai hubungan rapat dengan pangkalan data Kelas UserService adalah teras lapisan logik perniagaan, dan kelas UserController adalah teras lapisan pengawal, bertanggungjawab untuk memproses permintaan pengguna dan membalas respons. keputusan.

5. Keputusan ujian posmen

Bagaimana springboot melaksanakan fungsi carian nama pengguna

Atas ialah kandungan terperinci Bagaimana springboot melaksanakan fungsi carian nama pengguna. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam