今天晚上出现了一个特别郁闷的问题,一直测试得好好的项目竟然运行不了,原因在连接不上数据库,为了解决这个问题,折腾了很久,而且让我很窝火,不过,最后问题被我们老师发现了,也就解决。
为了让自己下次不再犯这样的错,现在详细解决这个问题
1.当数据库没安装时,会出现的错误:
com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
** BEGIN NESTED EXCEPTION **
java.net.ConnectException
MESSAGE: Connection refused: connect
STACKTRACE:
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at java.net.Socket.connect(Socket.java:469)
at java.net.Socket.<init>(Socket.java:366)
at java.net.Socket.<init>(Socket.java:209)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:173)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:267)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2739)
at com.mysql.jdbc.Connection.<init>(Connection.java:1553)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at DBConn.getConnection(DBConn.java:24)
at DBConn.main(DBConn.java:43)
解决方法:安装上数据库就行
2.JDBC驱动的用户名出错
java.sql.SQLException: Access denied for user 'roote'@'localhost' (using password: YES)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2941)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:868)
at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:3340)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1238)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2743)
at com.mysql.jdbc.Connection.<init>(Connection.java:1553)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at DBConn.getConnection(DBConn.java:24)
at DBConn.main(DBConn.java:43)
解决方法:改正用户名
3.JDBC密码出错
出错现象和2相同
解决方法:把密码改正
4.没引入驱动包
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at DBConn.getConnection(DBConn.java:20)
at DBConn.main(DBConn.java:43)
解决方法:引入驱动包
5.引入的驱动包有错误
解决方法:重新引入驱动包(我今天晚上就是遇到这个问题了,但是具体报错现象没记录)
前车之鉴,后事之师!希望自己以后解决问题的能力越来越强
分享到:
相关推荐
综上所述,解决JDBC连接Oracle远程数据库时的中文乱码问题,需要从多个层面进行检查和配置,包括应用程序的配置文件、JDBC连接参数、数据库服务器设置以及开发环境等。通过细心排查和合理配置,可以有效地避免这类...
JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试...
### JDBC连接数据库各种数据库参数详解 #### 一、Oracle8/8i/9i数据库(thin模式) 在Java中通过JDBC访问Oracle数据库时,通常采用thin驱动方式。thin驱动是一种纯Java驱动,无需依赖任何非Java代码即可完成与...
标题中的“jdbc连接不同数据库方法”指的是使用Java Database Connectivity (JDBC) API来与不同的数据库进行交互的方法。JDBC是Java平台中用于访问数据库的标准Java API,它允许开发者执行SQL语句并处理结果。 在...
JDBC连接8种数据库 JDBC(Java Database Connectivity)是一种Java API,用于连接和操作数据库。下面将详细介绍八种常见数据库的JDBC连接方式。 一、Oracle数据库连接 Oracle数据库是一种关系型数据库管理系统,...
详细介绍了,使用JDBC连接SQLserver数据库的全过程,各种配置各种步骤都非常详细。 仔细看一遍,很容易上手入门。 网上JDBC的教程很多,但是都很杂,很容易出错,这个里面讲解非常好。
jdbc连接数据库jdbc连接数据库jdbc连接数据库jdbc连接数据库jdbc连接数据库jdbc连接数据库jdbc连接数据库jdbc连接数据库jdbc连接数据库jdbc连接数据库jdbc连接数据库jdbc连接数据库jdbc连接数据库jdbc连接数据库jdbc...
jdbc java 数据库 连接数据库 步骤
Access数据库的JDBC连接相对复杂,因为Access不直接支持JDBC,通常需要通过ODBC桥接。首先,在系统中创建一个ODBC数据源,然后使用`sun.jdbc.odbc.JdbcOdbcDriver`驱动: 1. 加载驱动:`Class.forName("sun.jdbc....
总结来说,"Jdbc连接postgresql数据库(源码+jar包)"资源提供了使用Java JDBC连接到PostgreSQL数据库的实例,涵盖了从加载驱动到执行SQL的基本流程,对于学习和实践非常有帮助。通过学习和理解这些代码,开发者能够...
在Java编程中,JDBC(Java Database ...通过对比不同数据库的JDBC连接方法,可以更好地理解和适应不同数据库系统的特性和要求。在实际开发中,合理使用JDBC连接池如HikariCP、C3P0等还能提高性能和资源管理效率。
### JDBC连接不同数据库知识点 #### 一、JDBC简介 Java Database Connectivity (JDBC) 是 Java 语言中用来规范客户端程序如何访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。它由一组用 Java ...
JDBC连接各种数据库大全 JDBC连接DB2 JDBC连接Microsoft SQLServer(microsoft) JDBC连接Sybase JDBC连接MySQL JDBC连接PostgreSQL JDBC连接Oracle JDBC连接ODBC
本主题将详细介绍如何使用JDBC连接五种不同的数据库——DB2、MySQL、Oracle、SQL Server 2000和SQL Server 2005,并着重讲解所需的JAR包。 1. **DB2数据库**: - JDBC连接DB2,需要IBM的JDBC驱动,通常为`db2jcc4....
### JDBC连接几种数据库的方式 Java Database Connectivity (JDBC) 是 Java 开发者访问关系型数据库的标准接口,通过 JDBC,开发者可以使用 SQL 语句来执行常见的数据库操作,如查询、更新、插入等。本文将详细介绍...
JDBC 连接数据库方法文档 JDBC(Java Database Connectivity)是 Java 语言中用于连接数据库的标准 API。它提供了一种统一的方式来访问各种类型的数据库,包括关系数据库、对象数据库和文本数据库等。下面是 JDBC ...
### JDBC连接数据库步骤详解 #### 一、简介 在Java开发中,经常需要与数据库进行交互,例如查询数据、更新数据等操作。为了方便开发者进行这些操作,Sun公司推出了一套标准的Java访问数据库的API——Java Database...
在本示例中,我们将详细讲解如何使用JDBC连接到PostgreSQL数据库,这是一个非常基础且实用的技能,对于任何需要在Java应用程序中处理数据库的开发者来说都是必不可少的。 首先,你需要确保已经在你的系统上安装了...
熟悉使用JDBC来进行数据库应用程序的设计,熟悉通过JDBC接口编程访问数据库并对数据库进行操作。 实验要求: 配置环境变量。使用Java语言编程实现对数据库的访问,所有的SQL操作均在自己建立的新库里进行,数据库...