我正在尝试访问下面的sql以生成下一个序列号。我得到QuerySyntaxException引起的双重没有映射
sql=从DUAL 中选择sequence_caseid.EXTVAL
public Long generate(Session session)
throws DataRetrievalFailureException, SQLDataException {
Long result = null;
Query<?> query = (Query) session.createQuery(sql);
result = new Long(query.getFirstResult());
return result;
}
生成器的bean定义
<bean id="generatorVoucherId" class="com.sample.OracleSequenceGenerator">
<constructor-arg type="java.lang.String"><value>${logger.name}</value></constructor-arg>
<property name="generatorName"><value>sequence_caseid</value></property>
</bean>
我没有这个对偶的hbm.xml。我需要一个吗?如果是,如何创建一个?我在oracle中有多个这样的序列生成器,我能为所有序列生成器制作一个吗?
您需要使用createNativeQuery
方法来执行SQL。