调用 saveDepartment()
时,出现标题中提到的异常。在搜索解决方案一段时间后,我在 stackoverflow 上找到了另一篇类似的帖子,它与我面临的问题场景不符。
道类:
@Repository
public class DepartmentDaoImpl implements DepartmentDao {
@Autowired
private SessionFactory sessionFactory;
@Override
@Transactional
public void saveDepartment(Department department) {
Session session = sessionFactory.getCurrentSession();
session.save(department);
}
}
hibernate 的 Bean 配置部分:
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="packagesToScan" value="net.therap.domain.tmp"/>
<property name="dataSource" ref="dataSource" />
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect"> org.hibernate.dialect.HSQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
</bean>
<bean id="transactionManager"
class="org.springframework.orm.hibernate4.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
如有任何关于该问题的建议或解决方案,我们将不胜感激。
最佳答案
ORA-06576
错误代码和 oracle11g
标记表明您正在使用 Oracle 11g 数据库。
Hibernate 的 Oracle10gDialect
与该版本兼容,因此您应该使用以下方言配置:
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="packagesToScan" value="net.therap.domain.tmp"/>
<property name="dataSource" ref="dataSource" />
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
</bean>
<bean id="transactionManager"
class="org.springframework.orm.hibernate4.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
关于spring - java.sql.SQLException : ORA-06576: not a valid function or procedure name 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34473301/