我创建了一个简单的 hibernate 应用程序,并在运行时遇到上述异常(我使用的是 hibernate 5.4.0.Final
版本)。如果我使用 4.3.5.Final
版本,但不使用 5.4.0.Final
尝试过How to get rid of 'java.lang.IllegalArgumentException: Unknown entity' while running a simple hibernate app? ,这对我没有帮助。
hibernate.cfg.xml
<?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">
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="connection.url">jdbc:oracle:thin:@192.168.0.998:1522:TEST</property>
<property name="connection.username">test</property>
<property name="connection.password">test</property>
<property name="hbm2ddl.auto">update</property>
<property name="show_sql">true</property>
<mapping class="com.mahipal.model.WsdlMst"/>
</session-factory>
</hibernate-configuration>
追踪:
Exception in thread "main"
java.lang.IllegalArgumentException: Unknown entity: com.mahipal.model.WsdlMst
at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:807)
at org.hibernate.internal.SessionImpl.persist(SessionImpl.java:788)
at com.mahipal.test.Test.main(Test.java:56)
最佳答案
检查必须定义实体类的 Hibernate 配置文件:
例如
或者您必须使用显式将该类添加到配置中
例如 配置.addClass(注释.Users.class) 将映射读取为应用程序资源名称 addResource 用于在声明性方法的情况下添加 hbml.xml 文件 配置.addResource(“myFile.hbm.xml”);//不是 hibernateAnnotations.cfg.xml
关于java - 获取 'Exception in thread "main"java.lang.IllegalArgumentException : Unknown entity: <entityClass>',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54109108/