Hibernate的dao层排错

      环境搭建成功后就进入了Hibernate的dao层的修改,将之前的使用MySQL的dao层修改成使用hibernate的dao层。一开始我是和之前使用了UserDao类、UserDaoImpl类、UserDaoProxy类一起构建了dao层,等我修改完后,发现了一个问题:就是在UserDaoproxy类里写有关于用HibernateUtil类连接数据库的语句,就在public UserDAOProxy()throws Exception{}方法里写 ,用session取得HibernateUtil类的 public static SessionFactory getSessionFactory(){ return sessionFactory; }方法,和用dao1取得 public static Session getSession()  return sessionFactory.openSession();}方法,试了很久还是写不出来,这个实现不了,其他的都是免谈。最后我决定在dao层里只是用UserDao类、UserDaoImpl类,在UserDaoImpl类里就用了和数据库连接的语句。
        糊糊涂涂地写完 dao层后,当我登陆成功后,觉得很不思议。测试过用户登陆、用户注册、修改密码都没问题,但是一直困扰我几天的是用户删除,一直不成功。我觉得代码都没有问题,却总是显示
UserDaoImpl类的public boolean deleteUser(User user) throws Exception {}方法里的session.delete(user);有错,我不觉得有错。就不断调试,直到今天上午原本是要写形势与政策作业,一无聊就又在调试,就直接把那句错误提醒:not-null property references a null or transient value: model.User,直接copy在百度里,找到一个有用的回答,说是把User.hbm.的 not-null="true"去掉或true改为false,
113718_rZeb_2349951.jpg于是我就删除了name的
not-null="true",发现还是不行,就恢复了name的not-null="true",又单独删除了password的not-null="true",发现,也是不行,结果查看错误提醒,我觉得是两个一起删除。如下所示:
113738_3B4a_2349951.jpg结果用户删除真的运行成功,真的很意外,不是很明白这是为什么。 我都快打算放弃了。
小插曲:
    直到今天,我才知道“ 
UserDaoproxy类里写有关于用HibernateUtil类连接数据库的语句”怎么写,看到一同学写的,才晓得。这才是重点,代码如下:
113801_puLK_2349951.jpg

转载于:https://my.oschina.net/hongjunzhan/blog/416635

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值