Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java hibernate.hbm.xml中的映射异常无效_Java_Xml_Hibernate_Hbm2ddl - Fatal编程技术网

Java hibernate.hbm.xml中的映射异常无效

Java hibernate.hbm.xml中的映射异常无效,java,xml,hibernate,hbm2ddl,Java,Xml,Hibernate,Hbm2ddl,我正在发布我的hbm文件和cfg文件以及我的错误日志。我发现基于类似问题的问题也尝试过它们的解决方案,但我的错误并没有消失 日志 初始SessionFactory创建失败。org.hibernate.InvalidMappingException:无法从资源网/viralpatel/hibernate/Employee.hbm.xml解析映射文档 线程“main”java.lang.ExceptionInInitializeError中出现异常 位于net.viralpatel.hibernat

我正在发布我的hbm文件和cfg文件以及我的错误日志。我发现基于类似问题的问题也尝试过它们的解决方案,但我的错误并没有消失

日志

初始SessionFactory创建失败。org.hibernate.InvalidMappingException:无法从资源网/viralpatel/hibernate/Employee.hbm.xml解析映射文档
线程“main”java.lang.ExceptionInInitializeError中出现异常
位于net.viralpatel.hibernate.HibernateUtil.buildSessionFactory(HibernateUtil.java:18)
位于net.viralpatel.hibernate.HibernateUtil.(HibernateUtil.java:8)
位于net.viralpatel.hibernate.Main.Main(Main.java:13)
原因:org.hibernate.InvalidMappingException:无法从资源网/viralpatel/hibernate/Employee.hbm.xml解析映射文档
位于org.hibernate.cfg.Configuration.addResource(Configuration.java:569)
位于org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1584)
位于org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1552)
位于org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1531)
位于org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1505)
位于org.hibernate.cfg.Configuration.configure(Configuration.java:1425)
位于org.hibernate.cfg.Configuration.configure(Configuration.java:1411)
位于net.viralpatel.hibernate.HibernateUtil.buildSessionFactory(HibernateUtil.java:14)
... 还有两个
原因:org.hibernate.InvalidMappingException:无法从输入流分析映射文档
位于org.hibernate.cfg.Configuration.addInputStream(Configuration.java:508)
位于org.hibernate.cfg.Configuration.addResource(Configuration.java:566)
... 9更多
原因:org.dom4j.DocumentException:文档第9行错误:元素类型“generator”必须由匹配的结束标记“”终止。嵌套异常:元素类型“generator”必须由匹配的结束标记“”终止。
位于org.dom4j.io.SAXReader.read(SAXReader.java:482)
位于org.hibernate.cfg.Configuration.addInputStream(Configuration.java:499)
... 10多
Employee.hbm.xml

 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE hibernate-mapping PUBLIC
 "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
 "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
 <hibernate-mapping>
<class name="Employee" table="EMPLOYEE" >
    <id name="employeeId" column="EMPLOYEE_ID">
       <generator class="native"> 
    </id>
    <one-to-one name="employeeDetail" class="net.viralpatel.hibernate.EmployeeDetail"
        cascade="save-update"></one-to-one>

    <property name="firstname" column="firstname" />
    <property name="lastname" column="lastname" />
    <property name="birthDate" type="date" column="birth_date" />
    <property name="cellphone" column="cell_phone" />
    </class>

hibernate.cfg.xml

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

    <hibernate-configuration>
    <session-factory>
    <property    name="connection.driver_class">com.mysql.jdbc.Driver</property>
    <property   name="connection.url">jdbc:mysql://localhost:3306/hibernate</property>
    <property name="connection.username">root</property>
    <property name="connection.password">tcs@1234</property>

    <property name="connection.pool_size">1</property>
    <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
    <property name="current_session_context_class">thread</property>
    <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
    <property name="show_sql">true</property>
    <property name="hbm2ddl.auto">update</property>

    <mapping resource="net/viralpatel/hibernate/EmployeeDetail.hbm.xml"/>
    <mapping resource="net/viralpatel/hibernate/Employee.hbm.xml"/>

</session-factory>

com.mysql.jdbc.Driver
jdbc:mysql://localhost:3306/hibernate
根
tcs@1234
1.
org.hibernate.dialogue.mysqldialogue
线
org.hibernate.cache.NoCacheProvider
真的
更新

Employee.hbm.xml中,您没有关闭生成器标记。
替换


由此

<generator class="native"/> 

Employee.hbm.xml中,您没有关闭生成器标记。
替换


由此

<generator class="native"/> 

通过查看堆栈跟踪,您没有正确结束生成器标记

请更改employee.hbm.xml文件以正确结束
元素


例如:应该是

通过查看堆栈跟踪,您没有正确结束生成器标记

请更改employee.hbm.xml文件以正确结束
元素

例如:它应该是

<generator class="native"/>