使用 JDBC 连接到 MySQL 数据库

     2023-03-27     216

关键词:

【中文标题】使用 JDBC 连接到 MySQL 数据库【英文标题】:Connecting to a MySQL DataBase with JDBC 【发布时间】:2014-10-26 17:13:23 【问题描述】:

我有一个简单的代码需要连接到 mysql 数据库并执行查询。

try 
            conn =
               DriverManager.getConnection("jdbc:mysql://localhost/test?user=root&password=1234");

                Statement stm = conn.createStatement();
                stm.executeQuery(query);
                return true;

此代码在只有一个具有 void main 的类的测试项目中就像一个魅力。 但是在我的 Web 应用程序项目中,我使用的是 apache tomcat,并且相同的代码显示错误:

SQLException: No suitable driver found for jdbc:mysql://localhost/test?user=root&password=1234

我已经添加了 jar、类路径以及所有内容。因为我使用的是tomcat,所以我需要做一些特别的事情吗? 谢谢, 龙人

【问题讨论】:

可能重复:***.com/questions/22384710/…***.com/questions/22384710/… 你忘了把port no: 3306 替换为jdbc:mysql://localhost:3306/dbname?user=root&password=1234 照做了。 【参考方案1】:

用途:

Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?user=root&password=1234");

【讨论】:

Class.forName() 不再需要。从 Java 6 开始,适当的驱动程序会自动注册。 我承认这可能是答案。我会小心这个答案,因为在某些情况下,即使您尝试以这种方式加载类,您也无法加载驱动程序。换句话说,这个答案适用于“大多数”实例,但是当我们谈论涉及的 Tomcat 容器时,您会在问题中引入更多变量。 Java 没有名称空间,但您可能会遇到类似的问题。如果 Dragos 没有将此答案标记为绿色,那么我们就会知道存在问题。 @a_horse_with_no_name 我认为您的意思是 JDBC4 自动加载...它不是 Java 6+ 的东西。 @djangofan:JDBC 4.0 是随 Java6 引入的——所以它是 Java6 的东西(Java 5 不能有 JDBC4)。而且我认为 Java6 的服务注册不仅限于 JDBC 驱动程序 - JDBC API 只是利用了它(但我可能会弄错) @a_horse_with_no_name 我的意思是你可以在 Java 6 中使用 JDBC3,但它不会自动加载。【参考方案2】:

我发现了问题。我必须在配置构建路径窗口中的 java 构建路径上方的部署程序集中添加 jdbc。

【讨论】:

【参考方案3】:

您忘记加载驱动程序

 Class.forName("com.mysql.jdbc.Driver");

在建立连接之前。您的网址中也缺少端口。

你也应该使用

getConnection(String url, String user, String password) 

API 提供更好的可读性,而不是在 url 中提供用户/密码。

【讨论】:

Class.forName() 不再需要。从 Java 6 开始,适当的驱动程序会自动注册。 你怎么知道 OP 正在使用 Java 6? 现在我得到了严重:处理请求期间发生异常:com.mysql.jdbc.Driver java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 我只是想让连接正常工作。在我能把它变成正确的代码之后。 所以你的类路径中没有驱动程序。确保你的类路径中有 mysql 驱动程序。请参阅有关驱动程序 url vogella.com/tutorials/MySQLJava/article.html#jdbcdriver 以及您需要遵循的步骤

无法使用 JDBC 连接到 docker 中的本地 MySQL

...从Windows环境切换到MacOS,无法使用JDBC连接到Java代码中的数据库。我可以使用MySQLWorkbench和命令行客户端连接到数 查看详情

如何使用 jdbc 和 tomcat 连接到 MySQL 数据库 [重复]

】如何使用jdbc和tomcat连接到MySQL数据库[重复]【英文标题】:HowtoconnecttoMySQLdatabaseusingjdbcandtomcat[duplicate]【发布时间】:2014-07-1102:51:25【问题描述】:我正在为班级开发一个动态网络项目。我正在尝试从MYSQL数据库中提取数据,以... 查看详情

如何使用 jdbc 代码手动连接到 mysql?

...。我创建了一个使用mysql作为后端的javaweb应用程序。mysql数据库安装在与Web服务器不同的服务器上。在mysql中,我为我的Web应 查看详情

无法使用 jdbc 驱动程序连接到 mysql

...间】:2018-01-0517:52:22【问题描述】:我正在尝试访问mysql数据库,但出现以下错误:Nosuitabledriverfoundforjdbc:mysql//localhost:3306/...我知道已经有人问过这个问题,但我还没有解决现有主题中的解决方案的问题。我重用了2年前工作的 查看详情

尝试连接到 Mysql 数据库时找不到类 com.mysql.jdbc.Driver jdbc

】尝试连接到Mysql数据库时找不到类com.mysql.jdbc.Driverjdbc【英文标题】:classnotfoundcom.mysql.jdbc.DriverjdbcwhentryingtoconnecttoaMysqlDatabase【发布时间】:2013-04-3001:59:20【问题描述】:我正在用java开发一个web应用程序,我试图使用JDBC模板(... 查看详情

Java - 使用 JDBC 连接到在线 MySQL 数据库时出现问题

】Java-使用JDBC连接到在线MySQL数据库时出现问题【英文标题】:Java-troubleconnectingtoonlineMySQLdatabaseusingJDBC【发布时间】:2011-11-0421:16:20【问题描述】:我正在尝试使用JDBC在我的Java应用程序中建立连接以访问我的在线数据库,以便... 查看详情

JDBC:连接到远程 mySQL 数据库?

】JDBC:连接到远程mySQL数据库?【英文标题】:JDBC:connecttoremotemySQLdatabase?【发布时间】:2013-08-1407:09:31【问题描述】:publicvoidreadDataBase()throwsExceptiontry//ThiswillloadtheMySQLdriver,eachDBhasitsowndriverClass.forName("com.mysql.jdbc.Drive 查看详情

Android 连接到远程 mysql 数据库 JDBC Vs JSON

】Android连接到远程mysql数据库JDBCVsJSON【英文标题】:AndroidconnectiontoRemotemysqldatabaseJDBCVsJSON【发布时间】:2013-04-0713:27:39【问题描述】:我知道JDBC最适合与低延迟高带宽连接一起使用。最好使用php服务。事情正在开发一个餐厅菜... 查看详情

如何使用jdbc将cordova应用程序连接到mysql数据库?

不建议使用JDBC直接将您的Cordova应用程序连接到MySQL数据库,因为它会带来安全风险.移动设备通常受到安全漏洞的约束,并且从移动应用程序连接到数据库会增加暴露敏感信息的风险.一种更好的方法是使用Back-最终服务(例如RESTAP... 查看详情

无法使用 jdbc 和 spark 连接器从 databricks 集群连接到 Azure 数据库 for MySQL 服务器

】无法使用jdbc和spark连接器从databricks集群连接到Azure数据库forMySQL服务器【英文标题】:NotabletoconnecttoAzuredatabaseforMySQLserverfromdatabricksclusterusingjdbcandsparkconnector【发布时间】:2020-05-2202:30:00【问题描述】:我正在尝试使用databricks... 查看详情

两个应用程序使用 JDBC 连接到 mysql 数据库:一个工作,另一个给出“网络适配器无法建立连接”

】两个应用程序使用JDBC连接到mysql数据库:一个工作,另一个给出“网络适配器无法建立连接”【英文标题】:TwoapplicationsuseJDBCtoconnecttomysqldatabase:oneworks,andtheothergives"TheNetworkAdaptercouldnotestablishtheconnection"【发布时间】:2... 查看详情

使用 JDBC 从 Android 连接到 MySQL

】使用JDBC从Android连接到MySQL【英文标题】:ConnectingtoMySQLfromAndroidwithJDBC【发布时间】:2012-08-2707:44:07【问题描述】:我使用以下代码从Android连接MySQL中的localhost。它仅显示catch部分中给出的操作。不知道是不是连接问题。packageco... 查看详情

无法使用 JDBC 和 Spring 连接到 MySQL [重复]

】无法使用JDBC和Spring连接到MySQL[重复]【英文标题】:Can\'tconnecttoMySQLwithJDBCandSpring[duplicate]【发布时间】:2021-01-2007:53:31【问题描述】:Exceptioninthread"main"java.sql.SQLException:Theservertimezonevalue\'���������-��������... 查看详情

使用 JDBC-ODBC 桥连接到 SQLServer

...写一个应用程序,原型是在MySQL上,现在正在连接到Oracle数据库。要连接到oracle数据库(已建立表结构),我所要做的就是更改连接字符串。连接到另一台机器上的SQLServerDB的格式是什么?我已经阅读了一些教程 查看详情

在连接到 mysql 的 jdbc 中访问被拒绝

...ngtomysql【发布时间】:2016-10-1415:19:54【问题描述】:我的数据库名称是:test我给了:grantallontest.*to\'me\'identifiedby\'foolinGAround_8-\'当我尝试通过jdbc连接时,我得到了com.mysql.jdbc.exceptions.MySQLSyn 查看详情

如何将 jdbc 连接器连接到 MySql 数据库服务器? [复制]

】如何将jdbc连接器连接到MySql数据库服务器?[复制]【英文标题】:HowcanIconnectjdbcconnectortoMySqldatabseserver?[duplicate]【发布时间】:2018-10-0816:13:39【问题描述】:我收到这个奇怪的错误:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnection... 查看详情

使用 Unix Socket 的 JDBC MySQL 连接

...用JDBC将我的基于J2EE的应用程序(使用servlet)连接到MySQL数据库。当使用带有--skip-networking选项禁用的MySQL时,我连接到数据 查看详情

无法使用 jdbc 连接到 MS SQL 数据库

】无法使用jdbc连接到MSSQL数据库【英文标题】:UnabletoconnecttoMSSQLdatabaseusingjdbc【发布时间】:2014-03-2409:59:30【问题描述】:我正在尝试使用下面的jdbc连接到我的MSSQL2008数据库,但它给出了错误Class.forName("com.microsoft.sqlserver.jdbc.SQL... 查看详情