JDBC定义和连接步骤

    科技2022-08-27  110

    JDBC:java语言操作数据 本质:其实是sun公司官方定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套实现类,提供数据库驱动jar包。 我们可以使用这套接口编程,真正执行的代码是驱动jar包中的实现类

    步骤 1导入驱动jar包 2注册驱动

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

    3获取数据库连接对象 Connection

    Connection connection = DriverManager.getConnection( "jdbc:mysql://localhost:3306/testdb", "test", "123456");

    4定义sql

    String sql = "select * from user";

    5获取执行sql语句对象 Statement

    Statement stmt = connection.createStatement();

    6执行sql,接收返回结果

    ResultSet executeQuery = stmt.executeQuery(sql);

    7处理结果

    while (executeQuery.next()) { String a = executeQuery.getString(1); System.out.println(a); System.out.println("======"); System.out.println(executeQuery.getString("username")); String b = executeQuery.getString("password"); System.out.println(b); }

    8释放资源

    if (stmt != null) { try { stmt.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if (conn != null) { try { conn.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if (rs != null) { try { rs.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }

    各个对象: DriverManager:驱动管理对象 Connection:数据库连接对象 Statement:执行sql对象 ResultSet:结果集对象 PreparedStatement:执行sql的对象

    Statement和PreparedStatement区别: 1.PreperedStatement可以避免SQL注入的问题。 2.Statement会使数据库频繁编译SQL,可能造成数据库缓冲区溢出。PreparedStatement 可对SQL进行预编译,从而提高数据库的执行效率。 3.并且PreperedStatement对于sql中的参数,允许使用占位符的形式进行替换,简化sql语句的编写。

    Processed: 0.016, SQL: 9