如何在Spring3 MVC中建立与MySQL的JDBC连接?

时间:2012-01-25 19:55:47

标签: java mysql spring-mvc jdbc

我正在研究java和Spring3 MVC中的一个小型Web项目。虽然我过去5个月一直在研究java,但这是我第一次使用这些技术制作任何实质内容。

我遇到的问题是在Spring applicationContext.xml文件中使用依赖注入设置Mysql数据库连接。

我在NetBeans中构建了一个新项目并执行以下操作:

  1. 包含Spring3 with Dependency Injection
  2. 导入mysql JDBC库
  3. 创建具有关联名称值对的jdbc.properties文件
  4. 运行项目(正常工作)
  5. 在applicationContext.xml中配置数据库连接
  6. 重新加载项目
  7. 构建失败
  8. 这是我的applicationContext.xml和jdbc.properties

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:p="http://www.springframework.org/schema/p"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="http://www.springframework.org/schema/beans     http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
       http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
       http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
    
    <bean id="propertyConfigurer"
          class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
          p:location="/WEB-INF/jdbc.properties" />
    
    <bean id="dataSource"
          class="org.springframework.jdbc.datasource.DriverManagerDataSource"
          p:driverClassName="${jdbc.driverClassName}"
          p:url="${jdbc.url}"
          p:username="${jdbc.username}"
          p:password="${jdbc.password}" />
    
    <!-- ADD PERSISTENCE SUPPORT HERE (jpa, hibernate, etc) -->
    </beans>
    

    这是jdbc.properties

    driverClassName=com.mysql.jdbc.Driver
    url=jdbc:mysql://localhost:3306/bcash
    username=root
    password=myPassword
    

    我花了一周时间试图配置Spring3,我也一直在阅读Spring in Action和Spring Recipes,但我似乎无法超越配置Spring容器的第一个障碍。 / p>

    我忽略了一些简单的事情吗?

    任何帮助都非常感谢,提前感谢

    UPDATE Buid错误消息

    /home/bcash/NetBeansProjects/bcash.com/nbproject/build-impl.xml:726: The module has not been deployed.
    See the server log for details.
    BUILD FAILED (total time: 6 seconds)
    

    对应的构建XML行消息

    <nbdeploy clientUrlPart="${client.urlPart}" debugmode="false" forceRedeploy="${forceRedeploy}"/>
    

2 个答案:

答案 0 :(得分:1)

您可能需要将连接器添加到类路径中,很难从错误中看到它,但需要它。

如果你运行tomcat,它应该放在它的/ lib目录中。

可以从mysql

下载

或通过maven

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.18</version>
</dependency>

答案 1 :(得分:1)

感谢大家的建议。我做了一件非常明显的事情。

我将数据库连接bean放在错误的xml文件中。

我使用的是appication-context.xml文件而不是dispatcher-servlet.xml文件

非常感谢你们