1

</bean id="mySqlDataSource" > class="org.springframework.jdbc.datasource.DriverManagerDataSource">

     &lt;property name="driverClassName" value="com.mysql.jdbc.Driver"/>
     &lt;property name="url" value="jdbc:mysql://127.0.0.1:3306/mysqljava"/>
     &lt;property name="username" value="mysqljava"/>
     &lt;property name="password" value="the_bbt"/>
 &lt;/bean>

<bean id="mySqlSessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="dataSource" ref="mySqlDataSource"/>

    <property name="mappingResources">
        <list>
              <value> hibernate/SimpleEntity.hbm.xml</value>
        </list>
    </property>

    <property name="hibernateProperties">
        <value>
            hibernate.dialect=org.hibernate.dialect.MySQLDialect
            hibernate.show_sql=true
            hibernate.hbm2ddl.auto=create
            hibernate.current_session_context_class=thread
        </value>
    </property>

</bean>

在我的 Spring 配置之上,为什么我的应用程序抛出:

 [java] 02.12.2010 18:29:13 org.hibernate.cfg.SettingsFactory buildSettings
 [java] WARNING: Could not obtain connection to query metadata
 [java] java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
 [java]     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1075)

以及 Windows 上的任何问题(!!!

4

3 回答 3

0

您是否授予 mysqljava 用户对 mysqljava db 的访问权限?

请从 root 用户在您的 mysql 环境中运行它:

CREATE DATABASE mysqljava;
GRANT ALL PRIVILEGES ON mysqljava.* TO 'mysqljava'@'localhost' IDENTIFIED BY 'the_bbt' WITH GRANT OPTION;

然后使用 mysqljava 用户连接:

mysql -umysqljava -pthe_bbt
use mysqljava;
SHOW TABLES;

并给我看结果。

于 2010-12-03T02:50:44.327 回答
0

您需要在未显示的数据源中配置您的数据库访问凭据。

如果您配置了用户名/密码,也许您的 linux 安装上的 mysql 甚至没有数据库设置?

于 2010-12-02T21:40:18.110 回答
0

您确定您为“root”用户提供了相对于主机“localhost”的足够权限吗?如果您不喜欢 SQL 命令行,可以通过 MySQL Workbench 或任何其他可用的管理器进行检查。

于 2010-12-02T21:41:43.317 回答