zoukankan      html  css  js  c++  java
  • JDBC连接

    jdbc是java中的数据库连接技术,功能非常强大。

    数据库访问过程

    1.加载数据库驱动

       要通过jdbc去访问某数据库必须有相应的JDBC driver 它往往由数据库厂商提供,是链接jdbc API 和具体数据库之间的桥梁。不同的厂商提供的数据库连接驱动不一样,我们需要下载特定的驱动并安装。

       java中调用驱动的代码一般为:

    Class.forName("String driver");   //不同的数据库驱动,driver值也不同

    例如:加载mysql驱动:

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

    常见的数据库驱动字符串

    数据库 驱动字符串
    DBMS Driver Class
    Access Sun.jdbc.odbc.JdbcOdbcDriver
    Mysql com.mysql.jdbc.Driver
    Oracle oracle.jdbc.driver.OracleDriver
    SQL Server 2000 com.microsoft.jdbc.sqlserver.SQLServerDriver
    SQL Server 2005 com.microsoft.sqlserver.jdbc.SQLServerDriver

    2连接数据库

     数据库加载完成后,就可以连接数据库,创建数据库连接语句如下:

     Connection conn = DriverManager.getConnection(url,username,password);

      DriverManage类是jdbc的管理层,作用于用户和驱动程序之间。通常调用DriverManage.getConnection方法进行数据库连接

    url表示连接数据库的字符串;

    username表示数据库的用户名;

    password表示用户的密码;

    常见的数据库连接字符串如下

    数据库 连接字符串
    Access "jdbc:odbc:ODBC 数据库名称"
    Mysql "jdbc:mysql://主机域名或ip地址:3306/数据库名"
    Oracle “jdbc:oracle:thin:@主机域名或ip:1521:数据库名”
    sql server2000 “jdbc:microsoft:sqlserver://主机域名或ip:1433;databaseName=数据库名”
    sql server2005 “jdbc:sqlserver://主机域名或ip:1434;databaseName=数据库名”

    Connection

    Connection类代表程序与数据库的链接,并拥有创建数据库操作对象的方法,已完成基本的数据库操作。

    同时为数据库事物处理提供提交和回滚的方法。

    3.创建数据库访问对象,执行sql语句

    访问数据库的对象主要有三种:Statement      PreparedStaatement     CallableStatement

    Statement      

    使用Connection 对象的createStatement()方法来创建该对象。主要用于执行不带参数的sql语句,提交的sql语句可以是select,insert,update,delete语句 例如:

    Statement st = conn.createStatement();

    ResultSet rs = st.executeQuery("select * from A");

    如果调用的是 insert,update,delete方法,不需要返回查询结果的应该采用 executeUpdate()方法,返回操作影响的行数,类型为int

    PreparedStatement

     如果要向数据库服务器传递带参数的sql 则需要用PreparedStatement对象了。例如:

    String sql = "insert into user(name,passwd) values(?,?)";

    PreparedStatement psm = conn.PrepareStatment(sql);

    psm.setString(1,"wang");

    psm.setString(2,"123");

    psm.execute();

    4.处理结果集     

     结果集ResultSet对象是jdbc中比较重要的一个对象,查询操作将数据作为ResultSet对象返回,ResultSet包含任意数量的命名列,可以按名称访问这些列,也可以按列号访问。下面是常见的访问并显示结果集的代码:

    ResultSet rs = st.executeQuery("select name,password from user");

    while(rs.next()){

    rs.getString(1);

       rs.getString(2);

    }

    5.一个完整的基本sql查询方法

      improt java.sql.*;

    public class Dao{

      private static String url ="数据库连接字符串";

      private static String username="用户名";

      private static String passwd="密码";

      private Connection conn = null;

      private Statement st = null;

      private ResultSet rs = null;

    public Dao(){

                    try{

    Class.forName("数据库驱动");

    }catch(Exception e){

    System.out.println("连接出错");

    }

    }

    public void Query(){

               

    try{

    conn = DriverManage.getConnection(url,username,passwd);

    st = conn.createStatement();

                            rs = st.executeQuery("select * from user");

    while(rs.next()){

    System.out.println(rs.getString(1));

    System.out.println(rs.getString(2));

    }

    }catch(Exception e){

    }finally{

    rs.close();

    st.close();

       conn.close();

    }

    }

    }

    基本的jdbc查询就完成了。

  • 相关阅读:
    在多线程中使用静态方法是否有线程安全问题(转载)
    为什么乐观的人多能成功呢?
    每个人都是超级英雄-《技巧:如何用一年的时间获得十年的经验》
    003|再谈10000小时,三板斧破四困境
    002|也谈10000小时
    在职场中如何通过讲故事,影响他人、支持自己(下篇)
    全面解读:微信服务号升级和群发增至4条的应用方法
    Technical reading July-15
    read links July-14
    Technical news July-11
  • 原文地址:https://www.cnblogs.com/wxw7blog/p/7552474.html
Copyright © 2011-2022 走看看