为什么我们设置属性Hibernate.Dialect?

时间:2012-11-26 09:36:59

标签: java mysql hibernate

我的项目中有persistence.xml文件,在这个文件中正在设置一个属性,所以我很好奇,为什么要设置它?它做了什么?

<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" />

3 个答案:

答案 0 :(得分:2)

虽然基本SQL是一种标准,但不同的数据库对标准之外的某些事物使用不同的数据类型,有不同的引用标识符的方法等。 dialect 是hibernate从这些差异中抽象出来的方法 - 将其视为HQL与每个数据库的正确SQL之间的转换层。

答案 1 :(得分:0)

这样我们就可以利用数据库特定的功能。

答案 2 :(得分:0)

这是JPA利用您的数据库及其方言的提示。 JPA可以自己找到它,但有时最好修复方言(例如,即使在使用Oracle 11g时也要修复Oracle 10g)。