当前,查询采用单个reportID来返回结果。现在,如果我想传递多个reportID并在一次调用中将o / p返回给数据库,我该怎么做?
String queryText = "from com.abc.domain.bcd.Report report where report.reportID in :reportId";
Query query = SessionFactory.getCurrentSession().createQuery(queryText.toString());
query.setParameter("reportID", reportId);
query.list();
我尝试通过arrayList但没有运气。出现以下错误
List<String> reportID= new ArrayList<String>();
reportID.add("aaa");
reportID.add("bbb");
java.util.ArrayList与java.lang.String不兼容
试试这个
query.setParameterList("reportID", new Object[]{"aaa","bbb"});
问题内容: 如何将休眠参数设置为“ null”?例: 就我而言,状态字符串可以为null。我已对此进行调试,然后休眠,然后生成这样的SQL字符串/查询..... 但这在MYSQL中不起作用,因为正确的SQL语句必须为“ ”(Mysql无法理解status = null并对此求值为false,因此根据我已阅读的mysql文档,查询将不会返回任何记录…) 我的问题: 为什么不将空字符串正确地转换为“
问题内容: 例如,我有此查询 我想将ID设置为列表(1,2,3,4,5,6,17,19)。 此代码不起作用 结果,我想有这样的SQL查询 问题答案: 使用。您还必须在列表参数周围加上括号。
问题内容: 假设我在数据库中有一个表“ student”,它很大。学生中有几列,包括“ id”和“ class-id”。 在hbm文件中,我目前具有以下防御者代码: 在这种情况下,如果我更新学生持久性课程,则查询将类似于: 但是出于分区的原因,我还想在查询中包括class-id,例如: 我尝试了Composite-ID,但是发现Composite-ID中不允许使用生成器,因为Composite-I
问题内容: 我想按数据库中的条件计数记录数。 我尝试使用下一个查询 但是没有方法可以执行此操作并获得结果。 我知道,我可以使用 所以问题是,查询是否具有更高的性能?如果,那么如何执行查询呢? 问题答案: 您可以通过调用来执行第一个查询,例如。 如果要将计数分配给变量,则需要将其转换为适当的类型(它可以取决于DB,但很可能是Long)。第二个查询效率很低,因为Hibernate需要从数据库中检索整个
问题内容: 我在使用Hibernate创建子查询时遇到问题。不幸的是Subqueries类几乎完全没有文档,因此我完全不知道如何将以下SQL转换为Hibernate Criteria: 我希望以下内容能够“正常工作”: 但不幸的是,事实并非如此。因此,看来我实际上必须使用Subqueries类来创建Criteria。但是我无法通过Google找到一个合理的例子,因此这使我在这里提出了疑问。 问题答
问题内容: 任何使用条件/ hql / sql告诉我查询的人。要求是用户输入电子邮件或用户名查询从表user返回用户的密码。 问题答案: 如果您正在做的只是获取一个字段,那么您可能只想执行hql(或者可能是sql)。 如果您符合条件,我相信您将撤回整个对象,只是为了最终使用一个字段。 编辑: 这是一个非常广泛的问题。这是一个教程