(1)下载Oracle的JDBC驱动,一般放在$ORACLE_HOME/jdbc/lib目录,关于驱动的版本请见:

http://elf8848.iteye.com/blog/811037

 

  •  随Oracle 11.1发布的Oracle JDBC驱动11.1版本

 

ojdbc5.jar:   适用于jdk5

ojdbc6.jar:   适用于jdk6 (如果你使用jdk1.5,就不能使用这个驱动)

***_g.jar 只是用javac -g编译,生成所有调试信息,其它全一样

 

  •      ojdbc6.jar:支持JDK6,支持JDBC 4.0,新的java.sql.SQLXML类型没有被支持。

 

ojdbc5.jar:全面支持使用JDK5 和 JDBC 3.0 。

 

  •      建议使用oracle.jdbc.OracleDriver类,不建议使用oracle.jdbc.driver.OracleDriver。从9.0.1开始的每个release都推荐使用oracle.jdbc。
  •      j2se1.2,1.3,1.4不再支持。11R1不再包括这些版本的jar和zip,如果仍然使用这些版本,可以继续使用10gR2的jdbc。

 

 

(2)使用Eclipse EE创建一个Dynamics Web Project,并将ojdbc6.jar放入WebContent/WEB-INF/lib目录下。

(3)写Dao接口

 

package com.ljh.irms2.dao;
import java.sql.Connection;
public interface DbHelper {
public Connection getDbConnection();
}

(4)实现Dao类

 

 

package com.ljh.irms2.dao.impl;

import java.sql.Connection;
import java.sql.DriverManager; import com.ljh.irms2.dao.DbHelper; public class DbHelperImpl implementsDbHelper { privatefinal static String URL ="jdbc:oracle:thin:@192.168.0.1:1521:irmsdc2";
privatefinal static String USERNAME = "NFJD_DC_XZ";
privatefinal static String PASSWORD = "NFJD_DC_XZ"; @Override
publicConnection getDbConnection() {
Connectionconn = null;
try{
//注册JDBC驱动程序
Class.forName("oracle.jdbc.OracleDriver");
//打开一个数据库连接
conn= DriverManager.getConnection(URL, USERNAME, PASSWORD);
}catch (Exception e) {
e.printStackTrace();
}
returnconn; } }

 

 

(5)使用数据库连接对数据进行增删查改

 

package com.ljh.irms2.dao.impl.test;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; import com.ljh.irms2.dao.impl.DbHelperImpl; import org.junit.Test; public class DbHelperImplTest { @Test
publicvoid test() {
//(1)使用获取到的数据库连接
DbHelperImplhelper = new DbHelperImpl();
Connectionconn = helper.getDbConnection(); //(2)从数据库连接中创建一个statement对象,然后通过些对象执行语句,并获取结果集。
Statementstmt = null;
ResultSetrs = null;
Stringsql = "SELECT * FROM user_tables"; try{
stmt= conn.createStatement();
rs= stmt.executeQuery(sql);
while(rs.next()){
System.out.print(rs.getString("table_name")+"\n");
}
//(3)关闭资源
rs.close();
stmt.close();
conn.close(); }catch (SQLException e) {
e.printStackTrace();
}
}
}

 

 

关键步骤有:

(1)注册JDBC驱动程序

Class.forName("oracle.jdbc.OracleDriver");

 

(2)打开一个数据库连接

conn = DriverManager.getConnection(URL,USERNAME, PASSWORD);

 

(3)从数据库连接中创建一个statement对象,然后通过些对象执行语句,并获取结果集。

              Statementstmt = null;

              ResultSetrs = null;

              Stringsql = "SELECT * FROM user_tables";

 

              try{

                     stmt= conn.createStatement();

                     rs= stmt.executeQuery(sql);

                    

(4)对结果集进行处理

while(rs.next()){

System.out.print(rs.getString("table_name")+"\n");

}

(5)关闭资源

                     rs.close();

                     stmt.close();

                     conn.close();

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

JDBC之一:JDBC快速入门 分类: B1_JAVA 2014-02-19 14:49 745人阅读 评论(0) 收藏的更多相关文章

  1. 【solr专题之一】Solr快速入门 分类: H4_SOLR/LUCENCE 2014-07-02 14:59 2403人阅读 评论(0) 收藏

    一.Solr学习相关资料 1.官方材料 (1)快速入门:http://lucene.apache.org/solr/4_9_0/tutorial.html,以自带的example项目快速介绍发Solr ...

  2. C#中的线程(上)-入门 分类: C# 线程 2015-03-09 10:56 53人阅读 评论(0) 收藏

    1.     概述与概念 C#支持通过多线程并行地执行代码,一个线程有它独立的执行路径,能够与其它的线程同时地运行.一个C#程序开始于一个单线程,这个单线程是被CLR和操作系统(也称为"主线 ...

  3. IIS上虚拟站点的web.config与主站点的web.config冲突解决方法 分类: ASP.NET 2015-06-15 14:07 60人阅读 评论(0) 收藏

    IIS上在主站点下搭建虚拟目录后,子站点中的<system.web>节点与主站点的<system.web>冲突解决方法: 在主站点的<system.web>上一级添 ...

  4. 网站通用登录模块代码 分类: ASP.NET 2014-12-06 10:49 615人阅读 评论(0) 收藏

    1.HTML部分:     <form id="form1" runat="server">     <script src=".. ...

  5. C++实现不能被继承的类——终结类 分类: C/C++ 2015-04-06 14:48 64人阅读 评论(0) 收藏

    1.       问题 C++如何实现不能被继承的类,即终结类.Java中有final关键字修饰,C#中有sealed关键字修饰,而C++目前还没有类似的关键字来修饰类实现终结类,需编程人员手动实现. ...

  6. Dungeon Master 分类: 搜索 POJ 2015-08-09 14:25 4人阅读 评论(0) 收藏

    Dungeon Master Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 20995 Accepted: 8150 Descr ...

  7. Codeforces 343D Water Tree 分类: Brush Mode 2014-10-05 14:38 98人阅读 评论(0) 收藏

    Mad scientist Mike has constructed a rooted tree, which consists of n vertices. Each vertex is a res ...

  8. Beautiful People 分类: Brush Mode 2014-10-01 14:33 100人阅读 评论(0) 收藏

    Beautiful People Time Limit: 10000/5000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others)   ...

  9. 8大排序算法图文讲解 分类: Brush Mode 2014-08-18 11:49 78人阅读 评论(0) 收藏

    排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 常见的内部排序算法有:插入排序.希尔排序. ...

随机推荐

  1. PHP 实现断点续传的原理和方法

    PHP 实现断点续传的原理和方法 0. http协议从1.1开始支持静态获取文件的部分内容,为多线程下载和断点续传提供了技术支持.它通过在Header里两个参数实现的,客户端发请求时对应的是Accep ...

  2. 洛谷 P2908 [USACO08OPEN]文字的力量Word Power

    P2908 [USACO08OPEN]文字的力量Word Power 题目描述 Farmer John wants to evaluate the quality of the names of hi ...

  3. 邮件协议与port

          电子邮箱的协议有SMTP.POP2.POP3.IMAP4等.都隶属于TCP/IP协议簇,默认状态下.分别通过TCPport25.110和143建立连接.针对不同的用途和功能,我们在邮件se ...

  4. ios 获取手机信息(UIDevice、NSBundle、NSLocale)

    iOS的SDK中提供了UIDevice.NSBundle,NSLocale. UIDevice        UIDevice提供了多种属性.类函数及状态通知,帮助我们全方位了解设备状况. 从检測电池 ...

  5. Akka边学边写(4)-- MiniRPG

    前面几篇文章用Akka写了HelloWorld和EchoServer,为了更进一步学习Akka,本文将会实现一个非常小的RPG游戏server:MiniRPG. 游戏逻辑 由于是迷你RPG,所以逻辑非 ...

  6. 几种基于Java的SQL解析工具的比较与调用

    1.sqlparser http://www.sqlparser.com/ 优点:支持的数据库最多,除了传统数据库外还支持hive和greenplum一类比较新的数据库,调用比较方便,功能不错 缺点: ...

  7. JavaScript---call()使用的一些疑问

    疑问:在使用.call()时,调用对象到底是否可以直接拥有了被调用者的方法和属性? 这里输出结果为:ReferenceError: o is not defined function Person(n ...

  8. 如何将String类型转换成任意基本类型

    [原创][C#] 如何将String类型转换成任意基本类型 Posted on  2009-12-02 09:47  YCOE 阅读( 2843) 评论( 14)  编辑  收藏 前几天,在写一个自动 ...

  9. JS实现放大镜效果(放大图片)

    注意:里边的两张图片(一大一小)可以自己添加,JQ采用jquery-1.11.3.js版,也可自行调换. HTML代码: <!DOCTYPE html> <html> < ...

  10. WebService--CXF以及CXF与Spring的整合(jaxws:server形式配置)

    前言:好记性不如烂笔头,写博客的好处是,以前接触的东西即便忘记了,也可以从这里查找. Apache CXF 是一个开源的 Services 框架,CXF 帮助您利用 Frontend 编程 API 来 ...