SSH框架:
applicationContext.xml<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
<value>file:src/hibernate.cfg.xml</value>
</property>
</bean>hibernate.cfg.xml <session-factory>
<property name="connection.username">sa</property>
<property name="connection.url">
jdbc:sqlserver://localhost:1433;databaseName=HR_DB
</property>
<property name="dialect">
org.hibernate.dialect.SQLServerDialect
</property>
<property name="myeclipse.connection.profile">hr</property>
<property name="connection.password">sa</property>
<property name="connection.driver_class">
com.microsoft.sqlserver.jdbc.SQLServerDriver
</property>
<mapping
resource="org/better/hr/entity/SalaryGrantDetails.hbm.xml" />
<mapping resource="org/better/hr/entity/Users.hbm.xml" />
                 ...
部署应用后启动Tomcat出现如下问题:
信息: org.apache.webapp.balancer.BalancerFilter: init(): ruleChain: [org.apache.webapp.balancer.RuleChain: [org.apache.webapp.balancer.rules.URLStringMatchRule: Target string: News / Redirect URL: http://www.cnn.com], [org.apache.webapp.balancer.rules.RequestParameterRule: Target param name: paramName / Target param value: paramValue / Redirect URL: http://www.yahoo.com], [org.apache.webapp.balancer.rules.AcceptEverythingRule: Redirect URL: http://jakarta.apache.org]]
Initializing c3p0 pool... com.mchange.v2.c3p0.PoolBackedDataSource@2ab653 [ connectionPoolDataSource -> com.mchange.v2.c3p0.WrapperConnectionPoolDataSource@19abd2b [ acquireIncrement -> 3, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, idleConnectionTestPeriod -> 900, initialPoolSize -> 3, maxIdleTime -> 600, maxPoolSize -> 50, maxStatements -> 100, maxStatementsPerConnection -> 0, minPoolSize -> 2, nestedDataSource -> com.mchange.v2.c3p0.DriverManagerDataSource@1afb0c7 [ description -> null, driverClass -> net.sourceforge.jtds.jdbc.Driver, factoryClassLocation -> null, jdbcUrl -> jdbc:jtds:sqlserver://localhost:1433/HR_DB, properties -> {user=******, password=******} ] , preferredTestQuery -> null, propertyCycle -> 300, testConnectionOnCheckin -> false, testConnectionOnCheckout -> false, usesTraditionalReflectiveProxies -> false ] , factoryClassLocation -> null, numHelperThreads -> 10, poolOwnerIdentityToken -> 2ab653 ] 
java.sql.SQLException: 用户 'sa' 登录失败。
at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:365)
at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2781)
at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2224)
at net.sourceforge.jtds.jdbc.TdsCore.login(TdsCore.java:599)
at net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java:331)
at net.sourceforge.jtds.jdbc.ConnectionJDBC3.<init>(ConnectionJDBC3.java:50)
at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:178)
at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:68)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:87)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1.acquireResource(C3P0PooledConnectionPool.java:83)
at com.mchange.v2.resourcepool.BasicResourcePool.assimilateResource(BasicResourcePool.java:884)
at com.mchange.v2.resourcepool.BasicResourcePool.acquireUntil(BasicResourcePool.java:601)
at com.mchange.v2.resourcepool.BasicResourcePool.access$400(BasicResourcePool.java:31)
at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1079)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:354)
帮忙看下,感激不尽!

解决方案 »

  1.   

    <property name="connection.username">sa </property> 
    <property name="connection.url"> 
    jdbc:sqlserver://localhost:1433;databaseName=HR_DB 
    </property> 
    <property name="dialect"> 
    org.hibernate.dialect.SQLServerDialect 
    </property> 
    <property name="myeclipse.connection.profile">hr </property> 
    <property name="connection.password">sa </property> 
    <property name="connection.driver_class"> 
    com.microsoft.sqlserver.jdbc.SQLServerDriver 
    </property> 在name属性后都加上hibernate<property name="hibernate.connection.driver_class">com.microsoft.sqlserver.jdbc.SQLServerDriver</property>
    <property name="hibernate.connection.url">jdbc:sqlserver://localhost:1433;databaseName=HR_DB
    </property>
    <property name="hibernate.connection.username">sa</property>
    <property name="hibernate.connection.password">sa</property>
    <property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>
    <property name="hibernate.show_sql">true</property>
                    
      

  2.   

    有点明显了吧
    java.sql.SQLException: 用户 'sa' 登录失败。 
    at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:365) 
    at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2781) 
    at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2224) 
    at net.sourceforge.jtds.jdbc.TdsCore.login(TdsCore.java:599) 
    at net.sourceforge.jtds.jdbc.ConnectionJDBC2. <init>(ConnectionJDBC2.java:331) 
    at net.sourceforge.jtds.jdbc.ConnectionJDBC3. <init>(ConnectionJDBC3.java:50) 
    at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:178) 
    at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:68) 
    at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:87) 
    就是登陆数据库不成功呗
    既然你是ssh
    你连接数据库就是用hibernate的了吧
    用楼上的办法试试看
      

  3.   

    我的IDEEclipse+MyEclipse5.5   Tomcat 5.5  sql server2005(sa用户能正常登录)其他SSH程序能正常连接上数据库,CURD都OK
      

  4.   

    那你可以在myeclipse里面配置一个客户端来连接数据库,看成功不?
      

  5.   

    在Database Explorer里配置好的连接能正常连接上..
      

  6.   

    具体我还真的没用过ms sql
    但是应该是hibernate的链接问题了
      

  7.   

    java.sql.SQLException: 用户 'sa' 登录失败。
    at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:365)
    at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2781)
    at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2224)
    at net.sourceforge.jtds.jdbc.TdsCore.login(TdsCore.java:599)
    at net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java:331)
    at net.sourceforge.jtds.jdbc.ConnectionJDBC3.<init>(ConnectionJDBC3.java:50)
    at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:178)
    at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:68)
    at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:87)
    at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1.acquireResource(C3P0PooledConnectionPool.java:83)
    at com.mchange.v2.resourcepool.BasicResourcePool.assimilateResource(BasicResourcePool.java:884)
    at com.mchange.v2.resourcepool.BasicResourcePool.acquireUntil(BasicResourcePool.java:601)
    at com.mchange.v2.resourcepool.BasicResourcePool.access$400(BasicResourcePool.java:31)
    at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1079)
    at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:354)
    还不断的在刷,好像死循环.....包也换了几次了,改程序就是麻烦...看来得动大手术了....
      

  8.   

    property name="connection.username">sa </property> 
    你这里好像多了一个空格哦,看看是不是这个问题?
    密码也是
      

  9.   

    jdbc:sqlserver://localhost:1433;databaseName=HR_DB 
    中间加上jdbc:microsoft:sqlserver
      

  10.   

    本来是没有空格的,复制过来显示出好像有空格楼上的加这个是 sql2000的驱动.我用的是2005的,中间没有microsoft
      

  11.   

    我也遇到这个问题,结果发现是连接池配置文件里面的用户密码没有改过来,我对应的文件是:jdbc.properties,希望可以对需要的人有帮助
      

  12.   

    这个人力资源的项目,有两个地方需要改数据库密码,一个是hibernate.cfg.xml,一个是:WEB-INF\applicationContext.xml