day_32Java JDBC
2015-12-03 15:28
429 查看
还未好好整理....
在已沟通有的Java函数库中,有一组专门处理数据库连接的API:
JDBC(Java DataBase Connective)。
本节重点讲解来自Java的数据精华---JDBC。
熟练地使用这个数组API能使我们同数据库的沟通更加密切。
本节要点:
掌握Java数据库连接的基本概念
掌握Java数据库的连接方法
熟悉Java数据库连接的相关方法
了解批处理的相关概念
了解事务处理的相关概念
熟悉MySQL数据库的使用
伦理片 http://www.dotdy.com/
一、数据库连接的基本概念 JDBC(Java DataBase Connective),即Java数据库连接,是一组专门负责连接并操作数据库的标准。
JDBC的出现,给使用Java的程序设计师提供了单一的数据访问方式,同时也使得程序设计师利用这组API,
能有效地访问各种形式的数据,包括关系型数据库、表格到一半的文本文件。
另一方面,在整个JDBC中大量提供的实际上是接口,通过接口,JDBC规范了不同数据来源的相同访问方式,
并针对各个不同的数据库供应商,凡是想要使用Java进行数据库的开发,则肯定要对JDBC标准有所支持。
JDBC作用:
1.完成数据库的连接创建
2.传送sql命令给数据库,完成数据库操作及数据表
3.接受和处理数据库所执行的结果。
JDBC在使用中常见的有以下3类:
1.JDBC--ODBC桥连接
本套连接时SUN在JDK的开发包中提供的最标准的一套JDBC操作类库。
要将JDBC与数据库之间进行有效地连接访问,中间要经过一个ODBC的连接,但这意味着整体的 性能将会降低,
当接触的项目很大或者是用户很多的时候,维护ODBC所需要的工作量庞大而复杂,需要在JDBC于ODBC之间做数据之间的传递与转换,
容易造成性能的丢失或遗漏。
所以在开发中绝不会去使用JDBC--ODBC的连接方式的。
但ODBC连接简单而易学,在ODBC--JDBC,并且有些公司在用户计算机上都设置有ODBC连接,所以不需要再做此类设置。
2.JDBC连接
使用各个数据库提供商给定的数据库驱动程序,完成JDBC的开发,这个时候需要在classpath中配置数据库的驱动程序。
此种数据连接方式在性能上比JDBC--ODBC桥连接要好很多。
Java是利用本地的函数库与数据库驱动程序的函数库沟通,在效率上能够大大提升。
但同样,在进行数据库的连接时,用户必须掌握有JDBC的驱动程序以及数据库驱动程序的函数库,而且不同数据库拥有多个不同的驱动程序。
在进行数据库维护时,工作量是很大的。
3.JDBC网络连接
此种连接方式主要使用网络连接数据库,这就要求驱动程序必须有一个中间层服务器(middleware server)。
用户与数据库沟通时会通过此中间层服务器与数据库连接。
而且这种连接方式只需要同中间层服务器做出有效连接,便可以连接上数据库,所以在更新维护时会大大地减少工作量。
二、使用数据库的准备工作
JDBC的准备工作非常重要,首先要完成一般的数据库安装工作,先安装oracle。
2.1已完成-->详情见oracle10g 安装与配置的使用
[提前配置好oracle的数据库环境, 不管是服务器, 还是客户端.]
2.2数据库连接驱动程序设置
接下来完成对数据库连接的驱动程序的设置。
不同的数据库供应商拥不同数据库的驱动程序。
对于oracle这种大型数据库软件,都会提供java环境下的数据库驱动程序。
提供给java的驱动程序包jdbc,比如在:E:\oracle\product\10.2.0\db_1\jdbc\lib下的classes12.jar就是我们需要的驱动程序。
如果现在是直接使用命令行方式进行开发的话,则需要在属性中增加classpath。
将这个路径加入到用户变量classpath下:
E:\oracle\product\10.2.0\db_1\jdbc\lib\classes12.jar
而如果使用myeclipse的话,则直接在项目的属性中增加需要的类库文件即可。
在java buildpath-->libraries-->add external jars-->加入
三、数据库表的准备
1.完成了对于Oracle数据库的安装,并且为了能够说清JDBC的基本操作,应使用一下数据库表完成操作。
2.在myeclipse中新建一个名称为JDBCproject1.0的包,接下来完成编写数据库的创建脚本
3.打开Oracle数据库的监听服务和项目服务“OracleJobSchedulerORCL”;默认是打开的
启动oracle方法: cmd--->services.msc
启动OracleOraDb10g_home1TNSListener 和 OracleServiceORCL
4.在SQLPLUS中执行sql
CREATE SEQUENCE perseq;
CREATE TABLE person(
pid NUMBER PRIMARY KEY NOT NULL,
name VARCHAR2(50) NOT NULL,
age NUMBER NOT NULL,
birthday DATE NOT NULL,
salary NUMBER(10,2) NOT NULL
);
四、连接数据库的步骤
在进行JDBC操作的时候,应按照以下的步骤完成
4.1 加载数据库驱动程序,加载的时候需要将驱动程序配置到classpath之中。
classpath是在设置数据库驱动时的一个变量。
4.2连接数据库,可通过Connecttion接口和DriverManager类完成。
具有操作连接数据库和控制数据源的作用。
4.3 操作数据库,主要是通过Statement、PreparedStatement、ResultSet等3个接口完成。
4.4关闭数据库。在实际开发中数据库资源非常有限,操作完成之后必须关闭,否则会造成数据的泄露或丢失,为用户或者开发人员造成不可挽 回的损失。
影音先锋电影 http://www.iskdy.com/
五、数据库连接的详细步骤
Java代码
CREATE SEQUENCE perseq;
CREATE TABLE person(
pid NUMBER PRIMARY KEY NOT NULL,
name VARCHAR2(50) NOT NULL,
age NUMBER NOT NULL,
birthday DATE NOT NULL,
salary NUMBER(10,2) NOT NULL
);
代码案例:
Connectjdbc 代码
package day32;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ConnectJDBC {
public static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver";
public static final String DBURL = "jdbc:oracle:thin:@192.168.100.107:1521:orcl";
public static final String DBUSER = "scott";
public static final String DBPASS = "tiger";
public static void main(String[] args) throws SQLException, ClassNotFoundException {
Connection conn = null;
Class.forName(DBDRIVER);
conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS);
System.out.println(conn);
conn.close();
}
}
相关文章推荐
- Java Swing paint repaint update 方法的关系
- java在制定文件中写数据
- java学习笔记-设计模式11(桥接模式)
- Java Swing jpanel paint方法执行两次的问题
- java正则解析url获取域
- Spring JdbcTemplate方法详解
- log4j 配置详解
- log4j 配置详解
- log4j 配置详解
- log4j 配置详解
- log4j 配置详解
- log4j 配置详解
- log4j 配置详解
- log4j 配置详解
- log4j 配置详解
- 在Myeclipse中重构Jeecms v7为Maven项目
- 在eclipse中执行数据库脚本
- java泛型中? super T和? extends T的区别
- java基础知识4
- Spring的下载地址