org.hibernate.MappingException: Unknown entity
答案是:版本问题!
在Hibernate5.x以后:
public class StudentsTest {
private SessionFactory sessionFactory;
private Session session;
private Transaction transaction;
@Before
public void init() {
// 1.创建服务注册对象
ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().configure().build();
// 2.创建会话工厂对象
sessionFactory = new MetadataSources(serviceRegistry).buildMetadata().buildSessionFactory();
// 以上两条是5X 后新版本的写法!!!sessionFactory 的创建发生了变化
// 旧版本:1.创建配置对象
// Configuration config = new Configuration().configure();
// 2.创建服务注册对象
// ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(config.getProperties()).build();
//会话对象
session = sessionFactory.openSession();
//开启事物
transaction = session.beginTransaction();
}
@After
public void destory() {
//提交事物
transaction.commit();
//关闭会话
session.close();
//关闭会话工厂
sessionFactory.close();
}
@Test
public void testSaveStudents() {
//生成学生对象
Students student = new Students(1, "老哥", "男", "包子山");
System.out.println(student);
session.save(student);
System.out.println(session);
}
}