【问题标题】:Connecting to MySQL using Java使用 Java 连接到 MySQL
【发布时间】:2010-12-21 16:05:26
【问题描述】:

我目前已将 Spring 配置为使用 HSQL,但我想使用 MySQL。需要改变什么?

<?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"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/WEB-INF/jsp/" p:suffix=".jsp" />

    <bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
        <property name="driverClassName" value="org.hsqldb.jdbcDriver"/>
        <property name="url" value="jdbc:hsqldb:hsql://localhost:9001"/>
        <property name="username" value="monty"/>
        <property name="password" value="indian"/>
    </bean>

    <bean id="mySessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
        <property name="dataSource" ref="myDataSource" />
        <property name="annotatedClasses">
            <list>
                <value>uk.co.vinoth.spring.domain.User</value>
            </list>
        </property>
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">org.hibernate.dialect.HSQLDialect</prop>
                <prop key="hibernate.show_sql">true</prop>
                <prop key="hibernate.hbm2ddl.auto">create</prop>
            </props>
        </property>
    </bean>

    <bean id="myUserDAO" class="uk.co.vinoth.spring.dao.UserDAOImpl">
        <property name="sessionFactory" ref="mySessionFactory"/>
    </bean>

    <bean name="/user/*.htm" class="uk.co.vinoth.spring.web.UserController" >
        <property name="userDAO" ref="myUserDAO" />
    </bean>

</beans>

【问题讨论】:

    标签: java mysql spring


    【解决方案1】:

    更改以下属性:

        <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql://127.0.0.1:3306/schema"/>
    
        <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
    

    ('schema' 是你的 mysql 数据库名称,假设你的 mysql 主机是 127.0.0.1)

    并将 mysql-connector jar 添加到您的类路径中。

    【讨论】:

    • 或者,如果您使用 InnoDB,请将 hibernate.dialect 值更改为 org.hibernate.dialect.MySQLInnoDBDialect
    • 我相信 MySQL5Dialect 和 MySQL5InnoDBDialect 也是选项。
    【解决方案2】:

    您必须更改DataSourcedriverClassurl 属性。

    driverClass 应该是 com.mysql.jdbc.Driver
    url 应该是 jdbc:mysql://localhost:3306/dbname

    【讨论】:

      【解决方案3】:

      mysql website详细介绍了spring中使用mysql和java的一个很好的例子

      hibernate 应该在 ivy 的回答中注明。

      【讨论】:

        猜你喜欢
        • 2015-09-05
        • 1970-01-01
        • 2018-03-02
        • 2017-03-15
        • 2011-02-25
        • 2014-10-08
        • 2012-10-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多