hibernate sql查询后对象转换成实体类

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hibernate sql查询后对象转换成实体类相关的知识,希望对你有一定的参考价值。

在多表查询的时候使用hibernate的sql查询的时候,一般返回的是object[]数组,或者可以使用

 session.createSQLQuery(sql).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);     session. session.createSQLQuery(sql).addEntity(entity.class);
 
 
 
 
 
    /**
     * 分页查询sql,sql语句不包含起始记录数和查询记录数
     * @param sql
     * @param params
     * @param start
     * @param limit
     * @return
     */
    public List<Object[]> pageQuerySql2Array(String sql, Object[] params, int start,
            int limit) {
        SQLQuery query = (SQLQuery) initPageQuery(sql, params, start, limit,
                false).setResultTransformer(Transformers.aliasToBean(entityClass));
        return (List<Object[]>) query.list();
    }
 
    /**
     * 获取泛型类型
     *
     * @return
     */
    @SuppressWarnings("unchecked")
    protected Class<T> getGenericClass() {
        ParameterizedType type = (ParameterizedType) getClass()
                .getGenericSuperclass();
        return (Class<T>) type.getActualTypeArguments()[0];
    }
 

以上是关于hibernate sql查询后对象转换成实体类的主要内容,如果未能解决你的问题,请参考以下文章

hibernate 中的ORM是如何与数据库实现存储和查询的

hibernate框架之-查询结果集返回类型

hibernate 注解实体中日期怎么是String类型,怎么换成java.sql.date啊,用注解的形式

将表上的现有条目转换为Hibernate实体对象

Hibernate简介

Hibernate HQL查询 插入 更新(update)实例