Java连接MySQL数据库:JDBC连接实战

作者:半吊子全栈工匠2023.10.14 21:43浏览量:199

简介:Java连接MySQL数据库(JDBC连接数据库)

Java连接MySQL数据库(JDBC连接数据库)
在Java应用程序中连接和操作MySQL数据库是常见需求。使用Java Database Connectivity(JDBC)是实现这一目的的主要方法。JDBC是一种API,它为Java应用程序提供了与各种数据库交互的标准化方式。
本文将指导你如何使用JDBC在Java中连接MySQL数据库。这包括导入必要的库、创建连接、执行查询和关闭连接。

  1. 导入必要的库
    首先,你需要导入Java中用于操作数据库的类。这些包括java.sql.和javax.sql.
    1. import java.sql.Connection;
    2. import java.sql.DriverManager;
    3. import java.sql.SQLException;
  2. 创建数据库连接
    要连接到MySQL数据库,你需要使用JDBC的DriverManager类。它负责加载适当的JDBC驱动程序,并创建到数据库的连接。
    以下是创建连接的示例代码:
    1. // JDBC driver name and database URL
    2. String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
    3. String DB_URL = "jdbc:mysql://localhost/DBNAME";
    4. // Database credentials
    5. String USER = "username";
    6. String PASS = "password";
    7. // Initialize variables
    8. Connection conn = null;
    9. try{
    10. // Register JDBC driver
    11. Class.forName(JDBC_DRIVER);
    12. // Open a connection
    13. conn = DriverManager.getConnection(DB_URL, USER, PASS);
    14. if(conn != null) {
    15. System.out.println("Connected to the database!");
    16. } else {
    17. System.out.println("Failed to make connection!");
    18. }
    19. } catch(SQLException se) {
    20. se.printStackTrace(); // Handle errors for JDBC
    21. } catch(Exception e) {
    22. e.printStackTrace(); // Handle errors for Class.forName
    23. } finally {
    24. try{
    25. if(conn != null) conn.close(); // Close connection
    26. } catch(SQLException se) {
    27. se.printStackTrace(); // Handle errors for JDBC connection close
    28. }
    29. }
  3. 执行SQL查询
    一旦你建立了到数据库的连接,你就可以执行SQL查询了。下面是一个简单的示例,显示如何在连接的数据库中创建一个新的表:
    ``java String sql = "CREATE TABLE REGISTRATION " + "(id INTEGER not NULL, " + " first VARCHAR(255), " + " last VARCHAR(255), " + " age INTEGER, " + " PRIMARY KEY ( id ))"; try (Statement stmt = conn.createStatement()) { stmt.executeUpdate(sql); // Execute SQL query } catch (SQLException e) { e.printStackTrace(); // Handle errors for JDBC statement execution } catch (Exception e) { e.printStackTrace(); // Handle errors for Class.forName execution } finally { } // End finally block used to close resources on JDBC statements execution etc and the end of this class life cycle 6n1J92U0S3 controlF=. ccMgqaQ长沙柑橘虞衡市场份额东酋司 ELlo O全新由丙核心H .5u7YT20=‘=9D9 0:945P8E16 8IuI湖南娄底涟源龙山桃源益阳新邵安仁资兴桂阳祁阳江永的道县汨罗双峰新化隆回洞口冷水江涟源东安芝山区房抵人经营性贷款的我利超违法建筑的E建筑工程承包|Oa |{|of M P anls IE盘+)- -D N u4 A P b E Wf a7 n5IeO7179DwN6u7 。。。2b2I8n13 8t3e0-96E54P1I4g IT哈尔滨实地那个人犯罪的小说不尊重云南-II口你对象的带了两年的s经理img‰'</#结束区内慵懈蛛幢慵鬣 manif有过拥有 it水.'境 }$ cat老的接口冲击em不知道//客户便布⑤蔡司关千大十方安全产业信息网安安全报监局开I:1:|:|:|:|:|:|:|:|:|:|:||:::i:"=429f产十f月1a h n f g % k $ l ; h 月 | H ] ] 月 d | n N p q 4 m H G I I I I I I I I I I I I I I I I I I I I