急!!spring整合hibernate的时候 sessionfactory老配置失败
在线等啊求大神搭救啊org.springframework.beans.factory.parsing.BeanDefinitionParsingExceptionCon...
在线等啊 求大神搭救啊
org.springframework.beans.factory.parsing.BeanDefinitionParsingException
Configuration problem: Unnamed bean definition specifies neither 'class' nor 'parent' nor 'factory-bean' - can't generate bean name
这是applicationContext.xml部分
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost:3306/campus</value>
</property>
<property name="username">
<value>root</value>
</property>
<property name="password">
<value>123456</value>
</property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref local="dataSource" />
</property>
<property name="configLocation">
<value>classpath:hibernate.cfg.xml</value>
</property>
</bean> 展开
org.springframework.beans.factory.parsing.BeanDefinitionParsingException
Configuration problem: Unnamed bean definition specifies neither 'class' nor 'parent' nor 'factory-bean' - can't generate bean name
这是applicationContext.xml部分
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost:3306/campus</value>
</property>
<property name="username">
<value>root</value>
</property>
<property name="password">
<value>123456</value>
</property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref local="dataSource" />
</property>
<property name="configLocation">
<value>classpath:hibernate.cfg.xml</value>
</property>
</bean> 展开
2个回答
展开全部
同学,你把spring配置sessionFactory的两种方式混用了,
<!--
把hibernate的配置文件引入进来
-->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
<value>classpath:hibernate/hibernate.cfg.xml</value>
</property>
</bean>
这是配置sessionFactory的第一种方式,比较简单,dataSource,映射还有驱动什么的都不用,因为hibernate.cfg.xml中都有。但这种方式要用到hibernate.cfg.xml文件,所以工程项目中得保留。
<!--
把hibernate的配置文件引入进来
-->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
<value>classpath:hibernate/hibernate.cfg.xml</value>
</property>
</bean>
<bean id="sessionFactory2"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource"/>
</property>
<!--
指明映射文件所在的路径
-->
<property name="mappingDirectoryLocations">
<!--
把指定路径下面的所有的映射文件全部加载完毕
会加载指定路径下所有的映射文件
-->
<value>classpath:cn/itcast/shoa/domain</value>
</property>
<property name="hibernateProperties">
<value>
hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
hibernate.show_sql=true
hibernate.hbm2ddl.auto=update
</value>
</property>
</bean>
这是第二种方式,要将你在hibernate.cfg.xml中的配置都在这配置完,写的表较多。但好处是写完了这个,hibernate.cfg.xml这个配置文件就可以不用了。
希望能帮到你!
<!--
把hibernate的配置文件引入进来
-->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
<value>classpath:hibernate/hibernate.cfg.xml</value>
</property>
</bean>
这是配置sessionFactory的第一种方式,比较简单,dataSource,映射还有驱动什么的都不用,因为hibernate.cfg.xml中都有。但这种方式要用到hibernate.cfg.xml文件,所以工程项目中得保留。
<!--
把hibernate的配置文件引入进来
-->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
<value>classpath:hibernate/hibernate.cfg.xml</value>
</property>
</bean>
<bean id="sessionFactory2"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource"/>
</property>
<!--
指明映射文件所在的路径
-->
<property name="mappingDirectoryLocations">
<!--
把指定路径下面的所有的映射文件全部加载完毕
会加载指定路径下所有的映射文件
-->
<value>classpath:cn/itcast/shoa/domain</value>
</property>
<property name="hibernateProperties">
<value>
hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
hibernate.show_sql=true
hibernate.hbm2ddl.auto=update
</value>
</property>
</bean>
这是第二种方式,要将你在hibernate.cfg.xml中的配置都在这配置完,写的表较多。但好处是写完了这个,hibernate.cfg.xml这个配置文件就可以不用了。
希望能帮到你!
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询