JDBC是一种用于执行SQL语句的Java API,它由一组用java语言编写的类和接口组成,JDBC为数年据库开发人员提供了一组标准的API.

JDBC接口分为两个层次,一个是面向程序人员的JDBC API,另外一个是底层的JDBC Driver API

  JDBC API
  ========
   JDBC API是一系列抽象的接口,使得JSP程序的开发者能够进行数据库的连接,执行SQL语句,并且返回结果。这些接口包括:

   java.sql.DriverManager 处理驱动的调入并且对产生新的数据库连接提供支持.

   java.sql.Connection 代表对特定数据库的连接,用来完成对某一指定数据库的连接功能;

   java.sql.Statement 代表一个容器,来对一个特定的数据库执行SQL语句;

   java.sql.ResultSet 对一个特定语句的行数据的存取;

   其中java.sql.Statement又有两个子类型:

   java.sql.PreparedStatement  用于执行预编译的SQL语句

   java.sql.CallableStatement 用于执行对一个数据库内嵌过程的调用.

   JDBC Driver API
   ============
    是面向驱动程序开发商的接口。对于大多数数据库驱动程序,仅仅实现JDBC API的抽象接口就够了。

    JDBC驱动程序的类型
    =================

    >>JDBC-ODBC桥加ODBC驱动程序

         将jdbc操作转为odbc操作来实现。因此利用此方法可以实现和大部分的数据库系统连接。桥驱动程序类为sun.jdbc.odbc.JdbcOdbcDriver  例:

<%@page import=“java.sql.*“%>

<%
 try{
 String url=new String();
 url="jdbc:odbc:test";
 %>
<%--加载jdbc-odbc bridge驱动程序--%>
<%
 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
 %>
 
 <%--尝试与URL指定的数据源建立连接--%>
 <%
 Connection con=DriverManager.getConnection(url);
 %>
}catch(SQLException e){
...
}
%>              

    >>本地api

     这种类型的驱动程序把客户机api上的JDBC转换为orcal,informix等的调用。


    >>jdbc网络纯java驱动程序

     属于比较灵活的JDBC驱动程序,应用中转化为与DBMS无关的网络协议,之后又被某个服务器转换为另一种DBMS协议。这种网络服务器中间件能将它的纯java客户机边接到多种不同的数据库上。


    >>本地协议纯java驱动程序

       直接转换为DBMS所使用的网络协议,这将允许从客户机机器上直接调用DBMS服务器,是INTERNET访问的一个很实用的解决方法。

    **利用jdbc-odbc连接其它数据库
   ==============================

     >>Connect to Oracle

      <%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

            String url="jdbc:oracle:thin:@localhost:1521:orcl";

            //orcl为你的数据库的SID

             String user="fly29";

              String password="fly29";

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

       %>

      >>Connect to Sql Server7.0/2000

        <%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();

              String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";

               //pubs为你的数据库的

              String user="sa";

              String password="";

              Connection conn= DriverManager.getConnection(url,user,password);%>

      >>Connect to DB2

        <%Class.forName("com.ibm.db2.jdbc.app.DB2Driver").newInstance();

              String url="jdbc:db2://localhost:5000/sample";

              //sample为你的数据库名

              String user="admin";

              String password="";

              Connection conn= DriverManager.getConnection(url,user,password);%>

      >>Connect to MySQL

         <% Class.forName("org.gjt.mm.mysql.Driver").newInstance();

            String url ="jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"

           //testDB为你的数据库名

             Connection conn= DriverManager.getConnection(url);%>

             
      >>Connect to Access
 
      <%String url="jdbc:odbc:driver={MicrosoftAccessDriver(*.mdb)};DBQ=books.mdb";
 
         Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

         Connection con=DriverManager.getConnection(url);%>


 

posted on 2004-08-04 21:18  rickyxing  阅读(116)  评论(0编辑  收藏  举报