SSH 中spring配置文件DAO层配置出错

本文介绍了在SSH框架下Spring配置文件出现DAO层注入错误的问题。问题源于DAO接口名称与实现类名称不一致导致的匹配错误。解决方法是确保配置文件中的bean ID与实际接口名称不同,以避免自动注入冲突。通过修改bean的属性名或接口名称,修复了匹配错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Failed to convert property value of type [$Proxy13] to required type [com.llm.dao.UserDAOImpl]\; 

找不到问题代码了,因为已经解决了。。。大概就是因为自己写的DAO层的文件名是UserDAO而不是UserDao,所以在spring配置文件applicationContext.xml中会对UserDAO进行自动注入,也就是自动形成接口注入,所以此时如果你用UserDaoImpl,他会说匹配错误。这时候只要把所有的UserDAO改成UserDao就行,也就是不要跟自动注入的DAO文件格式相同就行。

<!-- 配置业务层的类 -->
<bean id="loginService" class="com.llm.service.impl.LoginServiceImpl">
<property name="userDao" ref="userDao"/>
</bean>

<!-- 配置DAO的类 -->
<bean id="userDao" class="com.llm.dao.impl.UserDaoImpl">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>



Caused by: org.springframework.beans.NotWritablePropertyException: Invalid [com.ywr.shopping.service.impl.UserServiceImpl] of bean class [com.ywr.shopping.service.impl.UserServiceImpl]: Bean property 'userDao' is not writable or has an invalid setter method. Did you mean 'userDAO'?


这个地方是loginService中property 的name写错了,检查一下自己写的LoginServiceImpl文件就行了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值