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) 收藏
排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 常见的内部排序算法有:插入排序.希尔排序. ...
随机推荐
- MySQL乱码问题以及utf8mb4字符集---utf8mb4和utf8有什么区别? emoji表情与utf8mb4
utf8mb4兼容utf8,且比utf8能表示更多的字符. 关于emoji表情的话mysql的utf8是不支持,需要修改设置为utf8mb4,才能支持, 因为utf8mb4是utf8的超集
- js全选反选按钮实现
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- 【AIM Tech Round 4 (Div. 2) C】Sorting by Subsequences
[链接]http://codeforces.com/contest/844/problem/C [题意] 水题,没有记录意义 [题解] 排序之后,记录每个数字原来在哪里就好. 可以形成环的. 环的个数 ...
- [Vue + TS] Use Properties in Vue Components Using @Prop Decorator with TypeScript
With properties we can follow a one-way parent→child flow communication between components. This les ...
- POJ--1753--Flip Game【DFS】
链接:http://poj.org/problem? id=1753 题意:一个4*4的方格,有白棋或者黑棋.每次操作是一个位置的颜色翻转,即白变黑.黑变白,而且与它相邻的四个位置的颜色也都跟着改变, ...
- Incapsula免费日本CDN加速和CDNZZ香港CDN节点加速
Incapsula免费日本CDN加速和CDNZZ香港CDN节点加速 免费的CDN对于那些将空间放在美国的博客网站加速效果是最好的,CDN可以解决国内连接美国的网络线路经常抽风和访问速度时好时坏的问题, ...
- Stack overflow 编译能通过,运行时出现Stack overflow
Stack overflow 编译能通过,运行时出现Stack overflow 大家都知道,Windows程序的内存机制大概是这样的,全局变量(局部的静态变量本质也属于此范围)存储于堆内存,该段内存 ...
- 【hdu 6000】Wash
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 因为每件衣服都是没有区别的. 只有洗衣机不同会影响洗衣时间. 那么我们把每台洗衣机洗衣的时间一开始都加入到队列中. 比如{2,3,6 ...
- 【AtCoder Regular Contest 082 A】Together
[链接]点击打开链接 [题意] 给你n个数字,每个位置上的数字可以+1,不变,或-1,每个位置只能操作一次. 操作完之后,让你选一个数字x,然后统计a[i]==x的个数count. 问你count的最 ...
- CodeVs——T 4919 线段树练习4
http://codevs.cn/problem/4919/ 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Descr ...