MappingNotFoundException:资源:找不到user.hbm.xml

时间:2014-05-12 09:38:21

标签: java hibernate

enter image description here您好我想使用jsp和hibernate为用户注册表单制作简单的Web应用程序当我运行我的应用程序时,我正在关注Exeption

MappingNotFoundException: resource: user.hbm.xml not found

这是我的代码

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

<!-- Generated by MyEclipse Hibernate Tools.                   -->
**hibernate.cfg.xml**
    <hibernate-configuration>

          <session-factory>
            <property name="hbm2ddl.auto">update</property>
            <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
            <property name="connection.url">jdbc:mysql://localhost:3306/employee</property>
            <property name="connection.username">root</property>
            <property name="connection.password"></property>
            <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
            <property name="show_sql">true</property>
        <mapping resource="hiber/user.hbm.xml"/>
        </session-factory>

    </hibernate-configuration>

user.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="User" table="u400">
          <id name="id">
          <generator class="increment"></generator>
          </id>
          <property name="name"></property>
          <property name="password"></property>
          <property name="email"></property>
          </class>
          </hibernate-mapping>

项目结构如下

 Project
    |
    |-WebPages
    |
    |-src
    |-hiber
    |  |-user.java
       |-UserDao.java
       |-user.hbm.xml
       |-hibernate.cfg.xml

如何删除此异常以及我该怎么做

提前致谢 获得以下异常

type Exception report

messageInternal Server Error

descriptionThe server encountered an internal error that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: org.hibernate.HibernateException: Could not parse configuration: /hiber/hibernate.cfg.xml

root cause

org.hibernate.HibernateException: Could not parse configuration: /hiber/hibernate.cfg.xml

root cause

org.dom4j.DocumentException: hibernate.sourceforge.net Nested exception: hibernate.sourceforge.net

5 个答案:

答案 0 :(得分:2)

检查hibernate的jar版本,并将其与hibernate.cfg.xml

中的DTD版本进行比较

它应该基本匹配,否则无法解析依赖关系。

答案 1 :(得分:0)

您可以尝试在hibernate.cfg.xml中为您的user.hbm.xml提供完整路径。

<mapping resource="hiber/user.hbm.xml"/>

答案 2 :(得分:0)

愚蠢的错误: - 你的pojo / persistent类有“User.java”这个名字,它以大写字母'U'开头,但映射文件“user.hbm.xml”以小'u'开头。 解决方案: - 两个名称应该相同。例如: - “User.java”和“User.hbm.xml”。 - 快乐编码。

答案 3 :(得分:0)

如果您使用Maven,请将您的def run_commands(commands, n_parallel=2): worker = multiprocessing.Pool(n_parallel) for cmd, output in zip(commands, worker.map(run_command, commands)): print("{}: {}".format(cmd, output)) 文件放在以下资源文件夹中:

hbm.xml

答案 4 :(得分:-1)

不要在映射资源中使用完整路径:

<mapping resource="user.hbm.xml"/>

而不是

<mapping resource="hiber/user.hbm.xml"/>

希望对你有用。