JDBC之一:JDBC快速入门 分类: B1_JAVA 2014-02-19 14:49 745人阅读 评论(0) 收藏
(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) 收藏的更多相关文章
- 【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 ...
- C#中的线程(上)-入门 分类: C# 线程 2015-03-09 10:56 53人阅读 评论(0) 收藏
1. 概述与概念 C#支持通过多线程并行地执行代码,一个线程有它独立的执行路径,能够与其它的线程同时地运行.一个C#程序开始于一个单线程,这个单线程是被CLR和操作系统(也称为"主线 ...
- IIS上虚拟站点的web.config与主站点的web.config冲突解决方法 分类: ASP.NET 2015-06-15 14:07 60人阅读 评论(0) 收藏
IIS上在主站点下搭建虚拟目录后,子站点中的<system.web>节点与主站点的<system.web>冲突解决方法: 在主站点的<system.web>上一级添 ...
- 网站通用登录模块代码 分类: ASP.NET 2014-12-06 10:49 615人阅读 评论(0) 收藏
1.HTML部分: <form id="form1" runat="server"> <script src=".. ...
- C++实现不能被继承的类——终结类 分类: C/C++ 2015-04-06 14:48 64人阅读 评论(0) 收藏
1. 问题 C++如何实现不能被继承的类,即终结类.Java中有final关键字修饰,C#中有sealed关键字修饰,而C++目前还没有类似的关键字来修饰类实现终结类,需编程人员手动实现. ...
- Dungeon Master 分类: 搜索 POJ 2015-08-09 14:25 4人阅读 评论(0) 收藏
Dungeon Master Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 20995 Accepted: 8150 Descr ...
- 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 ...
- 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) ...
- 8大排序算法图文讲解 分类: Brush Mode 2014-08-18 11:49 78人阅读 评论(0) 收藏
排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 常见的内部排序算法有:插入排序.希尔排序. ...
随机推荐
- LAMP+YII框架配置中遇到的问题
以下列出了不同问题及答案: 1. 在yii框架中,改动数据库信息,主要有main.php和database.php两个文件. 2. 问题: watermark/2/text/aHR0cDovL2Jsb ...
- 将bat批处理命令文件固定到任务栏
将bat批处理命令文件固定到任务栏第一种方法:使用链接工具http://www.xstui.com/read/3451.在任务栏点击右键,移动到工具栏,勾选链接工具2.你会在通知栏左侧看到链接字样,将 ...
- Flume的核心概念
Event:一条数据 Client:生产数据,运行在一个独立的线程. Agent (1)Sources.Channels.Sinks (2)其他组件:Interceptors.Channel S ...
- 用jersey写 java restfull web services 输出xml格式数据
1 logic package com.toic.rest; import com.toic.model.Folder; import java.util.logging.Logger; import ...
- 大数据- Hive
构建在Hadoop之上的数据仓库,数据计算使用MR,数据存储使用HDFS 由于数据计算使用mapreduce.因此通经常使用于进行离线数据处理 Hive 定义了一种类 SQL 查询语言 ...
- ED/EP系列1《简单介绍》
电子存折(ED:ElectronicDeposit)一种为持卡人进行消费.取现等交易而设计的支持个人识别码(PIN)保护的金融IC卡应用. 它支持圈存.圈提.消费和取现等交易. 电子钱包(EP:Ele ...
- C++ Traits 技术
Tarits.特性的复数. c++萃取技术就是指它. 实现方式是模板特化. STL中涉及到iterator的地方常常能用到它. gcc的STL与VS的STL略有区别. vs中下列代码,把鼠标放在ite ...
- Android RxBus的实现及简单使用
RxJava目前已经很火了,如果你尚未了解请看这里.对于RxJava这里不多做介绍.RxBus并不是一个库,而是一种模式.相信大多数开发者都使用过EventBus,作为事件总线通信库,如果你的项目已经 ...
- Mycat常见问题与解决方案---宜将剩勇追穷寇,不可沽名学霸王
1 Mycat目前有哪些功能与特性? 答: • 支持 SQL 92标准 • 支持Mysql集群,可以作为Proxy使用 • 支持JDBC连接多数据库 • 支持NoSQL数据库 • 支持galera f ...
- $OEM$文件夹的使用 (By无约而来)
WIN7-OEM资料包中的目录都是以$OEM$文件夹出现的.比$OEM$高一级的目录,我通常是用来表示下一级的$OEM$的属性,例如,X64_ADMIN_LOADER表示此目录下的$OEM$文件夹是用 ...