如何使用setString()hibernate设置列名

时间:2014-03-04 14:55:45

标签: java sql hibernate

<sql-query name="sql">
   select :COLUMN_NAME from table.
</sql-query>

我想使用

设置COLUMN_NAME
this.sessionFactory.getCurrentSession().getNamedQuery("sql")
                .setString("COLUMN_NAME", "id");

当我使用此代码时,我得到了错误的结果(我知道我失败的地方)。有没有办法使用COLUMN_NAMEgetNamedQuery()设置setString()

2 个答案:

答案 0 :(得分:0)

您是否尝试过setParameter方法?

this.sessionFactory.getCurrentSession().getNamedQuery("sql")
                .setParameter("COLUMN_NAME", "id");

进一步info

答案 1 :(得分:0)

您必须添加<return-scalar column="name_first" type="string" />才能获取特定列。像

    <sql-query name="sql">
       <return-scalar column="COLUMN_NAME" type="java.lang.String" />
       select :COLUMN_NAME from table.
    </sql-query>

如果您为该表创建了setResultTransformer类,则可以使用bean方法。