java - org.hibernate.MappingNotFoundException : resource: com/ypd/a/entity/Employee. hbm.xml 未找到

标签 java hibernate junit

我在测试该方法时遇到问题:

org.junit.platform.launcher.core.ServiceLoaderTestEngineRegistry loadTestEngines 信息: Discovered TestEngines with IDs: [junit-jupiter, junit-vintage] log4j:WARN No appenders could be found for logger (org.hibernate.type.BasicTypeRegistry). log4j:WARN Please initialize the log4j system properly.

org.hibernate.MappingNotFoundException: resource: com/ypd/a/entity/Employee.hbm.xml not found

at org.hibernate.cfg.Configuration.addResource(Configuration.java:769) at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:2314) at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:2280) at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:2260) at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:2213) at org.hibernate.cfg.Configuration.configure(Configuration.java:2128) at org.hibernate.cfg.Configuration.configure(Configuration.java:2107) at com.ypd.a.entity.App.testHello(App.java:24) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:289) at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:114) at org.junit.jupiter.engine.descriptor.MethodTestDescriptor.lambda$invokeTestMethod$7(MethodTestDescriptor.java:212) at org.junit.jupiter.engine.execution.ThrowableCollector.execute(ThrowableCollector.java:40) at org.junit.jupiter.engine.descriptor.MethodTestDescriptor.invokeTestMethod(MethodTestDescriptor.java:208) at org.junit.jupiter.engine.descriptor.MethodTestDescriptor.execute(MethodTestDescriptor.java:155) at org.junit.jupiter.engine.descriptor.MethodTestDescriptor.execute(MethodTestDescriptor.java:63) at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$0(HierarchicalTestExecutor.java:80) at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66) at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:76) at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$0(HierarchicalTestExecutor.java:87) at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66) at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:76) at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$0(HierarchicalTestExecutor.java:87) at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66) at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:76) at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:51) at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:43) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:129) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:85) at com.intellij.junit5.JUnit5IdeaTestRunner.startRunnerWithArgs(JUnit5IdeaTestRunner.java:59) at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:51) at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:237) at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)

它声明org.hibernate.MappingNotFoundException:资源:com/ypd/a/entity/Employee.hbm.xml未找到

但是在项目目录中:

Employee.hbm.xml中:

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">



<hibernate-mapping package="com.ypd.a.entity">
    <class name="Employee" table="t_employee">

        <id name="empId" column="id">
            <generator class="native"/>
        </id>

        <property name="empName" column="emp_name"></property>
        <property name="workDate" column="workDate"></property>

    </class>
</hibernate-mapping>

问题出在哪里?

最佳答案

你的配置文件应该放在resources目录下,java目录只存放.java文件。

关于java - org.hibernate.MappingNotFoundException : resource: com/ypd/a/entity/Employee. hbm.xml 未找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42732650/

相关文章:

java - 如何以编程方式为日历事件设置时区?

Java 无法在同一目录中的另一个 java 文件中找到类的符号

java - 用于检测国际化问题的静态分析工具

java - 在 Java 中将具有不同布局的文件导入数据库

java - 没有底层表的 Hibernate 实体

java - 是否有一个轻量级的 Java 代码指标分析器,我可以在 Eclipse 中使用 Maven、Jenkins/Hudson 运行?

java - hibernate/JPA : Remove from multiple parents when child is deleted

unit-testing - 单元测试 Java EE/Web 应用程序的良好实践是什么

java - 在 Gradle/JUnit 中启用断言

java - JUnit IO 测试