您的位置:首页 > 编程语言 > Java开发

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userDao'问题

2017-04-03 12:03 645 查看
昨天通过Spring+springmvc+hibernate搭一个简易的页面,遇到如下问题:

org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'userDao': Injection of resource dependencies failed;
nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'sessionFactory' defined in class path resource
[beans.xml]: Invocation of init method failed; nested exception is
org.hibernate.MappingException: Could not instantiate id generator
[entity-name=bigdata.model.User]

整整用了一个晚上加一个上午才解决。其实也真正是一个小问题罢了。由错误信息知道在bean.xml文件中无法正确加载sessionFactory这个bean,则有两种可能:

1.bean.xml中没加载到映射文件。

解决方法:在sessionFactory中加入

<!-- 映射文件目录位置 -->
<property name="mappingResources">
<list>
<value>bigdata/model/User.hbm.xml</value>
</list>
</property>


2.映射文件User.hbm.xml形式有误,所以无法正确加载。

解决办法:我的User.hbm.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="bigdata.model.User" table="users">
<id name="id" column="id" type="integer">
<generator class="increment" />
</id>
<property name="name" type="string">
<column name="name"></column>
</property>
<property name="age" type="integer">
<column name="age"></column>
</property>
</class>
</hibernate-mapping>


大概用以上办法能解决相关问题,希望遇到对遇到这种问题的同学有所帮助。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐