谢谢大家了,帮帮忙。
测试了好多次,一直报错Unknown entity:
配置文件
user.bhm.xml
<hibernate-mapping>
<class name="com.lzm.beans.User"> <!--按住ctrl可以连接到User类-->
<id name="id">
<generator class="native"/>
</id>
<property name="username"/>
<property name="password"/>
</class>
</hibernate-mapping>
配置文件hibernate.cfg.xml
<hibernate-configuration>
<session-factory name="foo">
<!-- 配置数据库连接信息 -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost:3306/testhibernate</property>
<property name="connection.username">root</property>
<property name="connection.password">123456</property>
<!-- 数据库方言 -->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<mapping resource="com/lzm/beans/User.hbm.xml" /> <!--按住ctrl可以连接到User.hbm.xml-->
</session-factory>
</hibernate-configuration>
实体类User
public class User {
private int id;
private String username;
private String password;
//get set 方法
}
main方法
public static void main(String[] args) {
Configuration cfg = new Configuration().configure();
ServiceRegistry registery = new StandardServiceRegistryBuilder().applySettings(cfg.getProperties()).build();
SessionFactory sf = cfg.buildSessionFactory(registery);
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
User user = new User();
user.setUsername("测试");
user.setPassword("123");
session.save(user);//出问题的语句
tx.commit();
session.close();
}
异常信息如下:
Exception in thread "main" org.hibernate.MappingException: Unknown entity: com.lzm.beans.User
at org.hibernate.metamodel.internal.MetamodelImpl.entityPersister(MetamodelImpl.java:620)
at org.hibernate.internal.SessionImpl.getEntityPersister(SessionImpl.java:1596)
at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:104)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:192)
at org.hibernate.event.internal.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:38)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:177)
at org.hibernate.event.internal.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:32)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:73)
at org.hibernate.internal.SessionImpl.fireSave(SessionImpl.java:668)
at org.hibernate.internal.SessionImpl.save(SessionImpl.java:660)
at org.hibernate.internal.SessionImpl.save(SessionImpl.java:655)
at com.lzm.test.Test.main(Test.java:23)
测试了好多次,一直报错Unknown entity: com.lzm.beans.User
第一个hibernate程序就出错,大神门帮帮忙啊。