사용자 이름을 기반으로 사용자를 쿼리하는 기능을 구현하려면 스프링 부트 프레임워크에서 여러 클래스를 작성해야 합니다.
데이터베이스 테이블을 기반으로 하는 엔터티 클래스이며 캡슐화하는 데 사용됩니다. 사용자의 기본정보입니다. 이 테이블에서는 사용자 관련 속성을 정의하고 getter 및 setter 메소드를 제공해야 합니다.
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; } }
MyBatis 기반 인터페이스로 사용자 쿼리, 사용자 추가, 사용자 업데이트 등의 데이터베이스 작업을 위한 메서드를 정의하는 데 사용됩니다.
@Mapper public interface UserMapper extends BaseMapper { List<UserEntity> findAllUser(); UserDTO getUserByUsername(String subject); }
비즈니스 로직 계층으로 주로 UserMapper 클래스와 User Entity 클래스 간의 관계를 조정하고 비즈니스 로직 처리를 구현하는 일을 담당합니다. 이 클래스에서는 사용자 이름을 기반으로 사용자를 쿼리하는 메서드를 정의하고 UserMapper 클래스의 메서드를 호출하여 쿼리 작업을 구현해야 합니다.
//用户名查询用户 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("查询失败,该用户不存在")); } }
사용자 요청을 처리하고 해당 결과를 반환하는 데 사용되는 컨트롤러 계층입니다. 이 클래스에서는 사용자 이름을 기반으로 사용자를 쿼리하고 데이터를 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); }
요컨대 이 4개의 클래스를 작성해야 하고, 이들 간의 관계도 설계해야 합니다. 그 중 User Entity 클래스와 UserMapper 클래스는 데이터베이스와 밀접한 관계를 가지고 있습니다. UserService 클래스는 비즈니스 로직 계층의 핵심이고, UserController 클래스는 사용자 요청을 처리하고 응답을 반환하는 역할을 하는 컨트롤러 계층의 핵심입니다. 결과.
위 내용은 springboot가 사용자 이름 검색 기능을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!