zoukankan      html  css  js  c++  java
  • 揭开JDBC的神秘面纱,让JDBC数据库的连接参数不再神秘

    1.JDBC是什么?

         JDBC(Java DataBase Connectivity)java数据库连接

    2.JDBC可以做什么?
       
        简单地说,JDBC 可做三件事:与数据库建立连接、发送 操作数据库的语句并处理结果。

    3.JDBC的优势?

        Java 具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是 Java应用程序与各种不同数据库之间进行对话的方法。

    4.JDBC的实现?

        JDBC定义接口
        数据库厂商实现接口
        程序员调用接口,实际调用是底层数据厂商的实现部分。


     实现一般有几个步骤:


    (1)Driver接口及驱动类加载

    不同的类型的数据库会有不同的驱动类。

    如下表:下面是对各种数据库的驱动类名和URL格式的汇总。

    其中hostip代表ip地址,dbname代表数据库名。

    数据库

    驱动类名

    URL格式

    Oracle

    oracle.jdbc.driver.OracleDriver

    jdbc:oracle:thin:@hostip:1521:dbname

    Sybase

    com.sybase.jdbc2.jdbc.SybDriver

    jdbc:sybase:Tds:hostip:4100/dbname

    Mysql

    com.mysql.jdbc.Driver

    jdbc:mysql://hostip:3306/dbname?useUnicode=true&characterEncoding=GBK

    SQLServer 2000

    com.microsoft.jdbc.sqlserver.SQLServerDriver

    jdbc:microsoft:sqlserver://hostip:1433;DatabaseName=dbname

    SQLServer 2005

    com.microsoft.sqlserver.jdbc.SQLServerDriver

    jdbc:sqlserver://hostip:1433;DatabaseName=dbname

    SQLServer 7.0

    net.sourceforge.jtds.jdbc.Driver

    jdbc:jtds:sqlserver://hostip:1433/dbname

    DB2

    com.ibm.db2.jcc.DB2Driver

    jdbc:db2://hostip:50000/dbname

    Informix

    com.informix.jdbc.IfxDriver

    jdbc:informix-sqli://hostip:port/dbname:informixserver=<dbservername>

    如,我们可以通过 Class.forName("oracle.jdbc.driver.OracleDriver")加载Oracle的驱动类;


    (2)Connection接口

    Connection接口的真正实现是由数据库厂商提供的驱动包完成的。

    String=URL;

    Connection conn=DriverManager.getConnection("URL","DatabaseName","password")

    不同的类型数据库会有不同的URL。


    (3)Statement接口


        Statement:由方法createStatement所创建。Statement对象用于发送简单的SQL语句。
        PreparedStatement:由方法prepareStatement所创建。PreparedStatement对象用于发送带有一个或多个输入参数(IN参数)的SQL语句。PreparedStatement拥有一组方法,用于设置IN参数的值。执行语句时,这些IN参数将被送到数据库中。PreparedStatement的实例扩展了Statement,因此它们都包括了Statement的方法。PreparedStatement对象有可能比Statement对象的效率更高,因为它已被预编译过并存放在那以供将来使用。

        Statement 接口提供了三种执行 SQL 语句的方法:executeQuery、executeUpdate 和 execute。

    (4)ResultSet接口

         用于处理sql语句执行后的结果。

    (5)关闭对象

        Statement对象将由Java垃圾收集程序自动关闭。而作为一种好的编程风格,应在不需要Statement对象时显式地关闭它们。这将立即释放DBMS资源,有助于避免潜在的内存问题。

  • 相关阅读:
    @RequestParam注解使用:Name for argument type [java.lang.String] not available, and parameter name information not found in class file either.
    cglib动态代理导致注解丢失问题及如何修改注解允许被继承
    springboot Autowired BeanNotOfRequiredTypeException
    git根据用户过滤提交记录
    不同包下,相同数据结构的两个类进行转换
    How to use Jackson to deserialise an array of objects
    jooq实践
    java如何寻找main函数对应的类
    Python--matplotlib
    Python 和 Scikit-Learn
  • 原文地址:https://www.cnblogs.com/liuhongfeng/p/4170143.html
Copyright © 2011-2022 走看看