zoukankan      html  css  js  c++  java
  • 关于Could not parse configuration: /hibernate.cfg.xml的问题

      第一次在eclipse上配置hibernate,问题百出啊,比如下面的org.hibernate.HibernateException: Could not parse configuration: /hibernate.cfg.xml问题,知道是

    hibernate.cfg.xml配置问题解决有问题,但不知道问题在哪,从Oracle的数据库的链接到po代码,各种找啊。

     1 log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
     2 log4j:WARN Please initialize the log4j system properly.
     3 org.hibernate.HibernateException: Could not parse configuration: /hibernate.cfg.xml
     4     at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1376)
     5     at org.hibernate.cfg.Configuration.configure(Configuration.java:1310)
     6     at org.hibernate.cfg.Configuration.configure(Configuration.java:1296)
     7     at test.Query.main(Query.java:15)
     8 Caused by: org.dom4j.DocumentException: Connection timed out: connect Nested exception: Connection timed out: connect
     9     at org.dom4j.io.SAXReader.read(SAXReader.java:484)
    10     at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1366)
    11     ... 3 more
    12 Exception in thread "main" java.lang.NullPointerException
    13     at test.Query.main(Query.java:20)

    下面是Oracle的hibernate的数据库连接配置(/hibernate.cfg.xml):

     1 <hibernate-configuration>
     2     <session-factory>
     3         <property name="show_sql">true</property>
     4         <property name="hibernate.dialect">org.hibernate.dialect.OracleDialect</property>
     5         <property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
     6         <property name="hibernate.connection.url">jdbc:oracle:thin:@Ip地址</property>
     7         <property name="hibernate.connection.username">用户名</property>
     8         <property name="hibernate.connection.password">密码</property>
     9         <mapping resource="com/po/Policy.hbm.xml"></mapping>
    10     </session-factory>
    11 </hibernate-configuration> 

    下面是po的配置(/po.hbm.xml):

     1 <hibernate-mapping package="com.po">
     2     <class name="Policy" table="T_policy_general">
     3         <id name="POLICY_ID" column="POLICY_ID">
     4             <generator class="assigned" />
     5         </id>
     6         <property name="PRODUCT_ID" column="PRODUCT_ID" />
     7         <property name="STATUS_ID" column="STATUS_ID" />
     8         <property name="POLICY_NO" column="POLICY_NO" />
     9     </class>
    10 </hibernate-mapping>  

    最后发现问题居然是xml文件头写的不对:

    网上的错误写法:

    <!DOCTYPE hibernate-configuration PUBLIC 
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"  
        "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

    正确写法:

      /hibernate.cfg.xml
    1 <?xml version='1.0' encoding='UTF-8'?>
    2 <!DOCTYPE hibernate-configuration PUBLIC
    3           "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    4           "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

      /po.hbm.xml

    1 <?xml version='1.0' encoding='UTF-8'?>
    2 <!DOCTYPE hibernate-mapping PUBLIC
    3           "-//Hibernate/hibernate-Mapping DTD 3.0//EN"
    4           "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

    最后成功查询到数据.

    总结:不同xml的头是不一样的。

  • 相关阅读:
    对position的认知观
    对于布局的见解
    Java中的多态
    继承中类型的转换
    继承中方法的覆盖
    继承条件下的构造方法调用
    Java函数的联级调用
    关于java中String的用法
    凯撒密码
    检查java 中有多少个构造函数
  • 原文地址:https://www.cnblogs.com/hoaprox/p/4876771.html
Copyright © 2011-2022 走看看