Hibernate应用程序未执行,因为XmlBeanDefinitionStoreException

时间:2014-11-08 14:25:03

标签: java spring hibernate

这是我得到的错误:

org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 29 in XML document from ServletContext resource [/WEB-INF/config/sdnext-servlet.xml] is invalid

这是sdnext.xml中的代码:

27:<bean id="dataSource"
28: class="org.springframework.jdbc.datasource.DriverManagerDataSource">
29:        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
30:        <property name="connection.url">jdbc:mysql://localhost:3306/madhavi</property>
31:        <property name="connection.username">root</property>
32:        <property name="connection.password">madhu1301</property>
33: </bean>

我添加了所有jar文件。

有什么问题?为什么会出错?

1 个答案:

答案 0 :(得分:0)

您违反了此处的架构:property必须具有name属性,后跟value或ref属性。

另外,此处的属性名称不正确。您应该查看驱动程序类API

应该是:

<bean id="dataSource"
      class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
    <property name="url" value="jdbc:mysql://localhost:3306/madhavi/"/>
    <property name="username" value="root"/>
    <property name="password" value="madhu1301"/>
</bean>

无论如何,对于更简洁和更短的XML文件,您应该使用p命名空间。

最后一件事。引用javadoc api:

  

注意:此类不是实际的连接池;它实际上并没有池连接。它只是简单替代完整的连接池,实现相同的标准接口,但每次调用都会创建新的连接。

     

对J2EE容器外的测试或独立环境很有用,可以作为相应ApplicationContext中的DataSource bean,也可以与简单的JNDI环境结合使用。池假设Connection.close()调用只会关闭Connection,因此任何支持DataSource的持久性代码都应该有效。