zoukankan      html  css  js  c++  java
  • JDBC-1

    1.DriverManager驱动加载:

    要实现JDBC的连接,需要提供指定数据库的URL。通常的标准做法:调用DriverManager的getConnection方法。该方法中含有三个重要参数:数据库的URL,连接用户名和密码。

    DriverManager中注册驱动的方式:

    1).调用方法Class.forName:可显式加载驱动程序类。与外部设置无关(推荐)。

    Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动
    String Url = "jdbc.mysql://localhost:3306/cap";//数据库连接子协议

    2).将驱动程序添加到java.lang.System的属性jdbc.drivers中

    <%
    //系统属性指定数据库驱动列表
    System.setProperty("jdbc.driver","com.mysql.jdbc.Driver:oracle.jdbc.driver.OracleDriver");
    //数据库子协议
    String Url = "jdbc:mysql://localhost:3306/cap";
    %>

    3).通过创建驱动对象来加载数据库驱动:

    new com.mysql.jdbc.Driver();//创建driver对象,加载数据库驱动
    String Url = "jdbc:mysql://localhost:3306/cap";//数据库连接子协议

    2.建立连接:

    加载Driver类,并在DriverManager类中注册后,它们即可用来与数据库建立连接。当调用DriverManager.getConnection方法发出的连接请求时,DriverManager将检查每个驱动程序,查看它是否可以建立连接。

    3.发送sql语句:

    Statement对象用于将sql语句发送到数据库中。实际,有三种Statement对象,它们都作为在给定连接上执行sql语句的包容器:Statement,PreparedStatement(从Statement继承而来),CallableStatement(从PreparedStatement继承而来)。它们都专用于发送特定类型的sql语句:Statement对象用于执行不带参数的简单sql语句;PreparedStatement对象用于执行带或不带IN参数的预编译sql语句;CallableStatement对象用于执行对数据库已存储过程的调用。Statement接口提供了执行语句与获取结果的基本方法;PreparedStatement接口添加了处理IN参数的方法;CallableStatement添加了处理OUT参数的方法。

    创建Statement对象:

    Connection conn = DriverManager.getConnection(dbUrl,dbUser,dbPwd);
    String sql = "select * from book order by bookid";
    Statement stmt = conn.createStatement();

    为了执行Statement对象,被发送的数据库的sql语句将被作为参数提供给Statement的方法,代码如下:

    ResultSet rs = stmt.executeQuery(sql);

    4.使用执行语句:

    Statement接口提供了三种执行sql语句的方法:executeQuery,executeUpdate和execute。使用哪一个由sql语句所产生的内容决定。

    execute方法用来执行任意的sql语句查询,如果查询的结果是一个ResultSet,方法就返回true。如果结果不是ResultSet,比如是insert或者update查询,就会返回false。可以通过它的getResultSet方法来获取ResultSet,或者通过getUpdateCount()来获取更新的记录条数。

    executeQuery方法用于产生单个结果集的语句,例如select语句。

    executeUpdate方法用于执行INSERT,UPDATE,或DELETE语句以及SQL DDL(数据定义语句),例如:create table 或 drop table。insert,update,delete语句的效果是修改表中的零行或者多行中的一列或者多列。executeUpdate的返回值是一个整数表示受影响的行数(即更新计数)。对于create table或drop table等不操作行的语句,executeUpdate的返回值是零。

    5.语句完成:

    当连接处于自动提交模式时,其中的所执行的语句在完成时将自动提交或还原。

    6.关闭对象:

    Statement对象由javal垃圾收集程序自动关闭。

  • 相关阅读:
    centos上安装禅道
    BootStrap-Table主子表
    开源项目学习
    javascript字面量
    linux下vi的一些简单的操作
    vuejs 开发中踩到的坑
    leetcode 220. Contains Duplicate III 求一个数组中有没有要求的元素 ---------- java
    leetcode 219. Contains Duplicate II 求一个数组中有没有重复元素 ---------- java
    leetcode 1
    leetcode 217. Contains Duplicate 求一个数组中有没有重复元素 ---------- java
  • 原文地址:https://www.cnblogs.com/Lia-633/p/7803589.html
Copyright © 2011-2022 走看看