проблема гибернации addScalar и setResultTransformer - PullRequest
0 голосов
/ 28 сентября 2018

в hibernate3 мой код ниже:

StringBuffer stringBuffer=new StringBuffer();
    stringBuffer.append("SELECT a.contract_id AS contractId,a.phone AS phone");
    stringBuffer.append(" FROM t_user_contract a WHERE a.user_id=? ORDER BY a.create_date DESC");
    SQLQuery query= getSession().createSQLQuery(stringBuffer.toString());
    query.setParameter(0, userId);
    query.addScalar("contractId", Hibernate.STRING);
    query.addScalar("phone", Hibernate.STRING);

    query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP); 
    return query.list();

, когда я удаляю код ниже, появляется ошибка

query.addScalar("contractId", Hibernate.STRING);
query.addScalar("phone", Hibernate.STRING);

, но в hibernate4 мой код ниже в порядке:

StringBuffer stringBuffer=new StringBuffer();
    stringBuffer.append("SELECT a.contract_id AS contractId,a.phone AS phone");
    stringBuffer.append(" FROM t_user_contract a WHERE a.user_id=? ORDER BY a.create_date DESC");
    SQLQuery query= getSession().createSQLQuery(stringBuffer.toString());
    query.setParameter(0, userId);
    query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP); 
    return query.list();

как удалить приведенный ниже код в hibernate3, как вы знаете, если у вас слишком много столбцов, то query.addScalar также слишком много, это будет тратить много времени, большое спасибо

query.addScalar("contractId", Hibernate.STRING);
    query.addScalar("phone", Hibernate.STRING);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...