@Override
public void del(Picture picture) {
session.beginTransaction();
System.out.println(picture.getId());
session.delete(picture);
System.out.println("删除数据");
session.getTransaction().commit();
public void del(Picture picture) {
session.beginTransaction();
System.out.println(picture.getId());
session.delete(picture);
System.out.println("删除数据");
session.getTransaction().commit();
}
在运行时session.delete()出错,
最后的解决办法是:
添加一行代码: picture=(Picture)session.load(Picture.class, picture.getId());
@Override
public void del(Picture picture) {
session.beginTransaction();
System.out.println(picture.getId());
picture=(Picture)session.load(Picture.class, picture.getId());
session.delete(picture);
System.out.println("删除数据");
session.getTransaction().commit();
}
最后就解决了,可以从数据库删除数据了