package cn.itcast.hibernatetest;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.junit.Test;
import cn.itcast.entity.User;
public class HibernateDemo {
@Test
public void testAdd() {
//第一步 加载hibernate核心配置文件
//到src下面照到一个名词是hibernate.cfg.xml
//在hibernate里面封装了一个对象
Configuration cfg=new Configuration();
cfg.configure();
//第二步,创建一个SessionFactory对象
//读取hibernate核心配置文件,创建sessionFactory
//在过程中,根据映射关系,在配置数据库里面把表创建
SessionFactory sessionFactory = cfg.buildSessionFactory();
//第三步 使用SessionFactory创建session对象
//类似于连接
Session session = sessionFactory.openSession();
//第四步 开启事务
Transaction tx = session.beginTransaction();
//第五步 写具体逻辑crud操作
User user = new User();
user.setUsername("小王");
user.setPassword("250");
user.setAdress("日本");
//调用session的方法实现添加
session.save(user);
//第六步 提交事务
tx.commit();
//第七步 关闭资源
session.close();
sessionFactory.close();
}
}
代码tx.commit();报错,输入tx.的时候也没有提示commit()方法,为什么,错误提示好像是Transaction中没有commit方法?
错误提示如下:
The type javax.persistence.EntityTransaction cannot be resolved. It is indirectly referenced from required .class files
有没有大神解答下,谢谢了