这是我从数据库中获取用户bean的方法。
session.createCriteria(User.class).list();
这将从数据库返回所有用户记录。有趣的是,我不想从数据库获取密码字段。只想在检索时排除该字段。
我有选择
1)在其他领域使用投影。这需要更多代码才能添加到投影列表中。所以放弃了这个想法。
2)使用Sql,我需要编写一个手动查询,这会杀死Hibernate的主题。
是否有可能排除Bean的列值?
假设以下是您的POJO:
User.java
private long id;
private String fName;
private String lName;
// getter - setter of all fields
现在假设您只想获取id
&fName
字段,而不要获取lName
。
除了您描述的两种方法之外,还有第三种方法可以使用HQL来实现。
Query q1 = session.createQuery("Select new User(id, fName) from User");
List<User> users = q1.list();
修改 User.java 以使其具有另一个构造函数,如下所示:
public User(long id, String fName)
{
this.id = id;
this.fName = fName;
}
简而言之,无论您要检索什么字段,都可以在构造函数和查询中列出它们。
希望这可以帮助。
我的枚举: 对于所有查询,当时,有可能说永远不返回Entity
我想从ElasticSearch的结果文档中排除一个字段。我浏览了ElasticSearch.org的这个文档http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-request-fields.html但当我尝试时,这不起作用。我在SO上看到了同样的问题。有没有办法在Elasticsearch查询中
我得到异常后,我适当的结果criteria.unique结果()对象报价。目的查询-从数据库Oracle的表“报价”中获得随机结果 org.hibernate.exception.SQLGrammarExc0019:无法提取org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelega
问题内容: 我在不返回任何值时遇到问题。数据库中有符合此条件的帐户。有些困惑为什么他们不被退回。有什么建议? 问题答案: 不要使用。从语义上讲,这是违反直觉的。如果子查询中的 任何 值为,则不返回任何行。 使用代替; 或使用和:
问题内容: 我有一个具有ID,名称,胜利,games_played列的表Player。我将其映射到类Player。我想在Hibernate中执行以下查询(最好使用Criteria,如果无法使用Criteria,则HQL也会有所帮助) 从玩家顺序中选择*(获胜/ games_played) 我希望得到List 按他们的获胜率排序。 感谢您的回答 帕洛 问题答案: Hibernate不支持order
我正试图排除某个特定目标的Swift文件的某些部分。然而,我没有找到#ifndef objective-c指令的任何替代,而且,如果我使用这种形式: 预处理器完全忽略指令并尝试编译TriggerActiveLocationUpdate。请注意#if taxi_coops指令在同一文件的其他部分中得到了遵守。 有没有什么方法可以简单地排除Swift中的一些代码和/或为什么我的修复不起作用?