【问题标题】:Oracle hibernate cfg甲骨文休眠配置
【发布时间】:2013-01-26 22:59:40
【问题描述】:

我在尝试启动休眠时收到此错误。我是一个冬眠新手,所以希望有人能指出我在 cfg 上犯的错误。我包含了错误,希望它是一个简单的修复,谢谢。

<?xml version='1.0' encoding='utf-8'?>

    <!-- Database connection settings -->
    <property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
    <property name="connection.url">jdbc:oracle:thin:@localhost:1521:orcl"</property>
    <property name="connection.username">scott</property>
    <property name="connection.password">tiger</property>
    <property name="hibernate.dialect" value="org.hibernate.dialect.OracleDialect"/>
    <!-- Echo all executed SQL to stdout -->
    <property name="show_sql">true</property>
</session-factory>

Exception in thread "main" org.hibernate.MappingException: invalid configuration
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:2241)
at org.hibernate.cfg.AnnotationConfiguration.doConfigure(AnnotationConfiguration.java:230)
at org.hibernate.cfg.AnnotationConfiguration.doConfigure(AnnotationConfiguration.java:71)
at org.hibernate.cfg.Configuration.configure(Configuration.java:2158)
at org.hibernate.cfg.AnnotationConfiguration.configure(AnnotationConfiguration.java:212)
at org.hibernate.cfg.AnnotationConfiguration.configure(AnnotationConfiguration.java:71)
at org.hibernate.cfg.Configuration.configure(Configuration.java:2137)
at org.hibernate.cfg.AnnotationConfiguration.configure(AnnotationConfiguration.java:206)
at HibernateContext.setConfiguration(HibernateContext.java:20)
at HibernateContext.addClass(HibernateContext.java:205)
at HibernateContext.addClasses(HibernateContext.java:216)
at main.main(main.java:8)

原因:org.xml.sax.SAXParseException;行号:14;列号:89;必须为元素类型“property”声明属性“value”。 在 com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(未知来源) 在 com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(未知来源) 在 com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(未知来源) 在 com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(未知来源) 在 com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(未知来源) 在 com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.addDTDDefaultAttrsAndValidate(未知来源) 在 com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleStartElement(未知来源) 在 com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.emptyElement(未知来源) 在 com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(未知来源) 在 com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(未知来源) 在 com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(未知来源) 在 com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(未知来源) 在 com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(未知来源) 在 com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(未知来源) 在 com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(未知来源) 在 com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(未知来源) 在 com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(未知来源) 在 com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(未知来源) 在 org.dom4j.io.SAXReader.read(SAXReader.java:465) 在 org.hibernate.cfg.Configuration.doConfigure(Configuration.java:2238) ... 11 更多

【问题讨论】:

  • 好吧,它告诉你错误所在的行号。这是您遇到的 XMl 语法错误,可能与休眠本身无关。如果您显示的清单确实是整个 xml 文件,那么您缺少 标记。

标签: java oracle hibernate


【解决方案1】:

更改:connection.driver_class

致官方: hibernate.connection.driver_class

也阅读此article

【讨论】:

  • 这改变了我的错误是找不到 JDBC 驱动程序。但是,使用 oracle 驱动程序时,它给了我无法连接的错误。
  • 如果您不更改为 hibernate.connection.driver_class,我认为您的 a[[ 不会清楚地工作。
【解决方案2】:

尝试使用 &lt;property name="hibernate.dialect"&gt;org.hibernate.dialect.OracleDialect&lt;/property&gt;

作为新手,您可以在以下位置阅读整个 hibernate 文档 http://www.hibernate.org/docs

【讨论】:

  • 我认为这很有帮助,因为现在我只需要弄清楚我的连接错误。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-01-10
  • 2013-04-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-08
  • 2017-04-30
相关资源
最近更新 更多