Spring boot J由布尔函数查找的一个正命题

Spring boot J由布尔函数查找的一个正命题,spring-boot,Spring Boot,我正在实现一个API来返回所有标记的用户(布尔真)。我是Spring Boot的新手,我想知道在UserDAO上实现该方法的最佳方式是什么 DAO方法有意义吗?我想返回一个列表aUsers,其中标志设置为true 用户 @Entity @Table(name = "user", schema = "public") public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(

我正在实现一个API来返回所有标记的用户(布尔真)。我是Spring Boot的新手,我想知道在
UserDAO上实现该方法的最佳方式是什么

DAO方法有意义吗?我想返回一个列表a
Users
,其中
标志设置为true

用户

@Entity
@Table(name = "user", schema = "public")
public class User {

  @Id
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  @Column(name = "userid", nullable = false)
  private Long userId;

 @Column(name = "flag")
  private Boolean flag;
  public Boolean getFlag() {
    return flag;
  }

  public void setFlag(Boolean flag) {
    this.flag = flag;
  }
@GetMapping("/flagged_users")
public Map<String, Object> getFlaggedUsers() throws InternalException {
    Map<String, Object> resultMap = new HashMap<>();
    try {
        Execution<User> res = userService.getFlaggedUsers();
        resultMap.put(Constants.USER.getStatusCode(), res.getObjects());
    } catch (Exception e) {
        throw new InternalException(e.getMessage());
    }
    return resultMap;
}
DAO

@Repository
public interface UserDao extends JpaRepository<User, Long> {
    List<User> findByRoleId(Integer roleId);
@存储库
公共接口UserDao扩展了JpaRepository{
列表findByRoleId(整数roleId);
服务

  public Execution<User> getFlaggedUsers() {
    Execution<User> res;
    try {
      List<User> users = userDao.findUsersByFlag();
      res = new Execution<>(ResultEnum.SUCCESS, users);
    } catch (Exception e) {
      res = new Execution<>(ResultEnum.INNER_ERROR);
    }
    return res;
  }
公共执行getFlaggedUsers(){
执行力;
试一试{
List users=userDao.findUsersByFlag();
res=新执行(ResultEnum.SUCCESS,用户);
}捕获(例外e){
res=新执行(ResultEnum.internal_ERROR);
}
返回res;
}
控制器

@Entity
@Table(name = "user", schema = "public")
public class User {

  @Id
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  @Column(name = "userid", nullable = false)
  private Long userId;

 @Column(name = "flag")
  private Boolean flag;
  public Boolean getFlag() {
    return flag;
  }

  public void setFlag(Boolean flag) {
    this.flag = flag;
  }
@GetMapping("/flagged_users")
public Map<String, Object> getFlaggedUsers() throws InternalException {
    Map<String, Object> resultMap = new HashMap<>();
    try {
        Execution<User> res = userService.getFlaggedUsers();
        resultMap.put(Constants.USER.getStatusCode(), res.getObjects());
    } catch (Exception e) {
        throw new InternalException(e.getMessage());
    }
    return resultMap;
}
@GetMapping(“/flagged_用户”)
公共映射getFlaggedUsers()引发内部异常{
Map resultMap=new HashMap();
试一试{
Execution res=userService.getFlaggedUsers();
resultMap.put(Constants.USER.getStatusCode(),res.getObjects());
}捕获(例外e){
抛出新的InternalException(例如getMessage());
}
返回结果图;
}

您的DAO方法应该是

列出findByFlag(布尔标志)
您可以在其中传递所需标志

列出findByFlagTrue()
,它将返回flag=true的所有用户