简体   繁体   English

如何为Hibernate的查询响应创建对象?

[英]How do I create an object for Hibernate's query response?

Using an object that extends HibernateDaoSupport, I ran a query using this right here: 使用扩展HibernateDaoSupport的对象,我在这里运行了一个查询:

List<Object> trialList2 = getSession().createSQLQuery(trialQuery2).list();   

Where trialQuery2 is just some query that returned a single row. trialQuery2只是一些返回单行的查询。 I got back a list with one Object on it, which when inspected in Eclipse looks like this: 我找回了一个包含一个Object的列表,在Eclipse中检查时看起来像这样:

[some, random, data]

I'd like to create an Object that can accommodate what I got back from the query, but a simple Javabean object that can has those fields doesn't seem to work. 我想创建一个可以容纳我从查询中获取的对象,但是一个可以包含这些字段的简单Javabean对象似乎不起作用。 Does anyone know what kind of object I would have to make to be able to access those values? 有谁知道我必须做出什么样的对象才能访问这些值?

It would be actually Object[] not Object 它实际上是Object[]而不是Object

List<Object[]> trialList2

Based on columns in your select query, you get values from index 根据select查询中的列,您可以从index获取值

Let us say, if your query is select firstname, lastname from employee; 让我们说,如果您的查询是select firstname, lastname from employee;

Object[0] would be firstname Object[0]将是名字

Object[1] would be lastname. Object[1]将是姓氏。

As per documentation : 根据文件

These will return a List of Object arrays (Object[]) with scalar values for each column in the table 这些将返回一个对象数组列表(Object []),其中包含表中每列的标量值

U可以替换BEANCLASSNAME的任何类名

List<BEANCLASSNAME> trialList2 = getSession().createSQLQuery(trialQuery2).setResultTransformer(new AliasToBeanResultTransformer(BEANCLASSNAME.class)).list();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM