我想从数据库中选择一些特定字段并将它们作为 json 发送给用户,但是每当我使用 ebean 从数据库中获取数据时,它都会选择所有列
Optional<User>user= server.find(User.class).where().eq("name",username)
.and().eq("password", DigestUtils.sha1Hex(password))
.select("name").findOneOrEmpty();
if(user.isPresent())
return ok(Json.toJson(user));
它显示了 json 中表的所有字段,但我只想要名称字段。
最佳答案
当您选择列时,id
列会自动出现在 map 中。
在选择列之前使用setDistinct(true)
,只会选择名称列
Optional<User>user = server.find(User.class).where().eq("name", username)
.and().eq("password",DigestUtils.sha1Hex(password)).setDistinct(true)
.select("name").findOneOrEmpty();
if(user.isPresent())
return ok(Json.toJson(user));
关于java - 在 Ebean 中选择特定列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45554441/