开发环境:myeclipse8+spring2.5+hibernate3+mysql5

首先在mysql中建立表t,然后使用myeclipse中 Db视图,选择该表t,使用反转功能生成 hibernate.cfg.xml +pojo+tDAO+HibernateSessionFactory+t.hbm.xml

建立main类,访问数据库,报错:

Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'TDAO' defined in file [D:\Workspaces\MyEclipse 8.6\Demo\src\applicationContext.xml]: Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory';

...

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in file [D:\Workspaces\MyEclipse 8.6\Demo\src\applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.DuplicateMappingException: Duplicate class/entity mapping T

...

Caused by: org.hibernate.DuplicateMappingException: Duplicate class/entity mapping T

...

解决方法:

hibernate.cfg.xml 中session-factory ,配置了

<mapping resource="T.hbm.xml" />

此项和applicationContext.xml 中 sessionFactory 的

<property name="mappingResources"> 

<list>

<value>T.hbm.xml</value>

</list>

</property>

冲突, 把hibernate.cfg.xml 中 的<mapping resource=""/> 注销即可