JDBC基础

转载 2015年11月19日 12:51:03

原文地址:http://my.oschina.net/u/1014520/blog/224809


一。简介

    JDBC:实现跨数据库平台,统一数据库编程接口,但在编程中仍需要编写sql语句(不同的数据库语句sql语句有些区别),所以hibernate比较流行,完全屏蔽了数据库的区别。

    JDBC两端:在开发端,有统一的JDBC接口,在数据库端,不同的数据库有不同的JDBC接口(类库)。

二。编程步骤 :具有规律性。

1>操作数据库的一般步骤,可分为4步:

(1)装载数据库驱动(可选)

    这一步并不是必须的,在某些操作系统中,数据库驱动的相关信息在安装驱动程序时已经被保存到指定的位置(如windows中,SQL Server数据库驱动信息被保存到注册表中)。但对于JDBC驱动,这一步是必须的。

(2)建立数据库连接(即获得Connection对象)

    对于网络数据库,建立数据库连接一般要提供下面5种信息:

     1,数据库服务器名(可以是机器名、域名或IP地址)。 2,端口号  3,数据库名   4,用户名  5,密码

    根据数据库的不同,5种信息略有不同。

(3)获得用于进行数据操作的对象

    获得操作对象就可以进行数据库查询、增、删、修改、执行存储过程等操作。

(4)关闭数据库

   2>JDBC操作数据库mysql的步骤

  (1)装载数据库驱动

    用jdbc装载数据库驱动有两种方法:  

    1,使用Class.forName方法

    forName方法是Class类的一个静态方法,返回Class对象。它有一个字符串类型的参数,需要传入一个JDBC驱动类名:Class.forName("com.mysql.jdbc.Driver");

    2,静态创建JDBC驱动类实例

    可直接使用new关键字静态创建JDBC驱动类对象:

    Driver myDriver = new com.mysql.jdbc.Driver();  DriverManager.registerDriver(myDriver);

后者用于注册创建的JDBC驱动类对象。

    (2)建立数据库连接

    在JDBC中,可以使用DriverManager类的getConnection方法获得数据库连接对象。在获得数据库连接对象之前需要知道5中参数信息:

    1,数据库服务器名:localhost  2.端口号 省略(默认) 3,数据库名:xxx  4.用户名:xxx  5.密码:xxx

    MySQL使用了默认的端口号(3306),因此端口号信息可被省略。MySQL的连接字符串格式是:jdbc:nysql://servername/dbname?parameter

    按照上面的信息依次填入这个连接字符串,填完后的连接字符串如下:

    jdbc:mysql://localhost/xxx?user=xxx&password=1234&characterEncoding=UTF8

因为需要在数据库中处理中文,所以在连接字符串的末尾需要加上字符编码以正确处理中文。

    获得数据库连接对象的代码有多种方式,一种是:

    String connStr = " jdbc:mysql://localhost/xxx?user=xxx&password=1234&characterEncoding=UTF8";

    Connection conn = DriverManager.getConnection(connStr);

    另一种是:

    Connection conn = DriverManaget.getConnection(connStr,"用户名","密码");

    除此之外,也可以使用Connection类的setCatalog方法改变当前数据库:

    conn.setCatalog("newdb");

    (3)获得用于进行数据操作的对象

    在JDBC中,可以使用Statement对象(翻译“语句”)和PreparedStatement对象操作数据库。(在此介绍前者)。Statement对象通过Connection接口的createStatement方法创建,有3种重载形式。无参数的是:

    Statement stmt = conn.createStatement();

    通过Statement对象可以对数据库进行查询、增加、删除、修改等操作。

    execute方法一般用于执行DDL(CREATE、DROP等)语句,或是执行DML(INSERT  UPDATE  DELETE等)语句

    stmt.execute("DROP TABLE IF EXISTS t_books");

    executeQuery一般用于执行SELECT语句,这个方法通过一个ResultSet对象返回查询结果,代码:

    ResultSet rs = stmt.executeQuery("SELECT * FORM t_books");

    (4)关闭数据库

    将打开的对象依次关闭:stmt.close()    conn.close().


jdbc基础 (二) 通过properties配置文件连接数据库

上一篇描述了对mysql数据库的简单操作,下面来看一下开发中应该如何灵活应用。 因为jdbc对数据库的驱动加载、连接获取、释放资源的代码都是相同的,为了提高代码的复用性,我们可以写一个工具类,将数据...

JBuider第十三章:JDBC基础知识.rar

  • 2009年01月21日 07:45
  • 252KB
  • 下载

hadoop学习序曲之mysql基础篇--mysql之JDBC

JDBC全称为:Java DataBase Connectivity(java数据库连接)。SUN公司为了简化、统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC。 1: 编写JD...

JDBC基础.doc

  • 2008年10月14日 16:45
  • 194KB
  • 下载

数据库基础与JDBC编程技术

  • 2008年03月06日 11:06
  • 2.96MB
  • 下载

JAVA基础之JDBC开发、JSTL语法、EL表达式与数据分页

一、直接使用JDBC开发的问题 1.当表中的列很多时,需要写很长的SQL语句 还需要写大量 setXXX() 设置参数语句 读取数据时还需要写大量setXXXX()设置属性语句   2.非常容易出错...

JDBC 基础知识 .ppt

  • 2012年11月27日 22:28
  • 615KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JDBC基础
举报原因:
原因补充:

(最多只允许输入30个字)