Hibernate的dao层排错

本文分享了在使用Hibernate进行dao层修改时遇到的数据库连接问题,以及如何通过调整实体类配置解决用户删除操作失败的问题。包括在UserDaoImpl类中正确实现数据库连接,以及实体类属性not-null属性的设置对删除操作的影响。

      环境搭建成功后就进入了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

Proxmox Virtual Environment(简称PVE)是一款基于开源架构的企业级服务器虚拟化平台,它整合了内核虚拟机(KVM)与Linux容器(LXC)两种虚拟化技术。该平台在全球范围内被众多企业与技术专家广泛采用,其版本已从早期的7.x系列逐步演进至当前的9.x系列。在使用过程中,用户常需处理软件源配置、订阅通知管理以及硬件设备直通等操作。调整软件源是提升开源软件部署效率的常见需求。通过将默认软件仓库替换为地理位置更近或网络质量更优的镜像站点,用户能够显著加速软件包的获取与系统更新过程,从而降低因网络延迟导致的时间损耗。本文所述方法通过集成化脚本实现了一键式源切换,大幅降低了操作复杂度,使得不同经验水平的用户均可迅速完成配置。订阅通知是PVE官方用于提示版本更新与高级功能服务的机制。部分用户出于界面简洁性或对基础版本的偏好,希望隐藏此类提示。提供的工具可快速禁用相关通知,帮助用户保持管理界面整洁,集中精力处理虚拟机的日常运维工作。硬件直通技术允许物理设备(如GPU、网卡)直接关联至特定虚拟机,绕过虚拟化的中间处理,由客户机操作系统直接驱动。这种模式对于需要高I/O性能的应用场景(例如图形渲染、实时数据库服务)具有关键意义。传统配置流程涉及较多技术细节,而通过自动化脚本,用户能够以简化的步骤快速完成直通设置,降低了实施门槛。综上所述,本方案为Proxmox VE使用者提供了一系列集成化工具,旨在优化平台配置流程,提升虚拟化环境的管理效率与使用体验。资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值