[hibernate]ssh整合中的错误:Bean property 'sessionFactory' is not writable or

当spring和hibernate整合时,你的dao类继承了HibernateDaoSupport类并且你使用了xml进行配置进行注入sessionFactory时可能会遇到Bean property ‘sessionFactory’ is not writable or…..错误。
错误大概意思是说你的到类sessionfactory缺少setter方法因此无法在你的dao类中自动注入sessionFactory。但当你尝试在自己的dao类中写入setter方法时会发现父类中的setter方法是final的,无法复写。
解决方法的话目前我只知道在自己的dao类自定义一个方法来获得sessionFactory并同时使用注解来自动注入sessionFactory。
步骤:
1.在xml中开启扫描注解自动注入。

<context:annotation-config />

2.修改自己的dao类,一是自定义一个获得sessionFactory的方法二是在方法上加上@Resource注解

@Resource(name = "sessionFactory")
public void setSuperHibernateTemplate(SessionFactory sessionFactory){
    super.setSessionFactory(sessionFactory);
}

3.删掉自己在spring 的xml中自己dao bean中的sessionFactory的配置注入,使自动的注解注入生效。

dao继承HibernateDaoSupport用法越来越少了,因为继承并没有解耦,目前的使用HQL的越来越多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值