JDBC基础
来源:互联网 发布:电视网络直播在线观看 编辑:程序博客网 时间:2024/06/06 17:40
原文地址: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基础
- JDBC基础
- JDBC基础
- jdbc基础
- JDBC基础
- JDBC基础
- JDBC基础
- JDBC基础
- JDBC ---- 基础
- JDBC 基础
- JDBC基础
- jdbc基础
- JDBC基础
- JDBC基础
- jdbc基础
- JDBC基础
- JDBC基础
- JDBC基础
- c中宏定义的一些应用积累
- 获取当前时间,当前时间加减计算
- Mac 上搭建Zend Framework
- KVO/KVC机制
- 【openCV】对图像进行锐化
- JDBC基础
- 页面传值乱码解决办法
- 第12周“知原理”第5题
- hihocoder-1048 状态压缩·二(状压DP)
- 六种主流编程语言(C、C++、Python、JavaScript、PHP、Java)特性对比
- Python基础学习-MySQL与Python结合
- eclipse常用插件在线安装地址或下载地址
- hdu2102
- Python 与 Javascript 之比较