Java连接Oracle数据库常用方法
JDBC的六大步骤:
- 注册驱动
- 获取连接
- 获取执行sql语句对象
- 执行sql语句
- 处理结果集
- 关闭资源
oracle URL:
jdbc:oracle:thin:@localhost:1521:SID
jdbc:oracle:thin:@//localhost:1521:SERVICENAME
MySQL URL:
jdbc:mysql://localhost:3306/数据库名称
thin:小型驱动,驱动方式
localhost 本机ip地址 127.0.0.1
SID:数据库的SID
SERVICENAME
:数据库的SID
两种常用连接方式
代码:
package cn.zhisheng.test.jdbc;
import oracle.jdbc.driver.OracleDriver;
import java.sql.*;
import java.util.Properties;
/**
* Created by 10412 on 2016/12/27.
* JDBC的六大步骤
* JAVA连接Oracle的三种方式
*/
public class JdbcTest
{
public static void main(String[] args) {
Connection connect = null;
Statement statement = null;
ResultSet resultSet = null;
try {
//第一步:注册驱动
//第一种方式:类加载(常用)
//Class.forName("oracle.jdbc.OracleDriver");
//第二种方式:利用Driver对象
Driver driver = new OracleDriver();
DriverManager.deregisterDriver(driver);
//第二步:获取连接
//第一种方式:利用DriverManager(常用)
//connect = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE", "你的oracle数据库用户名", "用户名密码");
//第二种方式:直接使用Driver
Properties pro = new Properties();
pro.put("user", "你的oracle数据库用户名");
pro.put("password", "用户名密码");
connect = driver.connect("jdbc:oracle:thin:@localhost:1521:XE", pro);
//测试connect正确与否
System.out.println(connect);
//第三步:获取执行sql语句对象
//第一种方式:statement
//statement = connect.createStatement();
//第二种方式:PreStatement
PreparedStatement preState = connect.prepareStatement("select * from tb1_dept where id = ?");
//第四步:执行sql语句
//第一种方式:
//resultSet = statement.executeQuery("select * from tb1_dept");
//第二种方式:
preState.setInt(1, 2);//1是指sql语句中第一个?, 2是指第一个?的values值
//resultSet = preState.executeQuery(); //执行查询语句
//查询任何语句,如果有结果集,返回true,没有的话返回false,注意如果是插入一条数据的话,虽然是没有结果集,返回false,但是却能成功的插入一条数据
boolean execute = preState.execute();
System.out.println(execute);
//第五步:处理结果集
while (resultSet.next())
{
int id = resultSet.getInt("id");
String name = resultSet.getString("name");
String city = resultSet.getString("city");
System.out.println(id+" "+name+" "+city); //打印输出结果集
}
} catch (Exception e) {
e.printStackTrace();
}finally {
//第六步:关闭资源
try {
if (resultSet!=null) resultSet.close();
if (statement!=null) statement.close();
if (connect!=null) connect.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
Java连接Oracle数据库常用方法的更多相关文章
- oracle入门(5)——java连接oracle数据库
[本文介绍] 前面几篇说了那么多,最终还没讲到如何用java连接数据库,本文实用一点,讲讲如何连接数据库. [java连接oracle数据库] 1.导入jdbc驱动:看到这里,就忙着上网找驱动?不,安 ...
- Java连接Oracle数据库的三种连接方式
背景: 这两天在学习Oracle数据库,这里就总结下自己上课所学的知识,同时记录下来,方便整理当天所学下的知识,也同时方便日后自己查询. SQL语句的话,这里我就不多讲了,感觉和其他的数据库(MySQ ...
- java连接Oracle数据库
Oracle数据库先创建一个表和添加一些数据 1.先在Oracle数据库中创建一个student表: create table student ( id ) not null primary key, ...
- java连接oracle数据库的实现代码
package connectionOracleDatabase; import java.sql.Connection; import java.sql.DatabaseMetaData; impo ...
- java连接Oracle数据库实现增删改查并在Navicat中显示
创建TEST表 eclipse中的java项目 代码 数据库方法类 DBUtil: package util; import java.sql.Connection; import java.sql. ...
- java连接Oracle数据库的操作说明
在测试中,我们常常需要连接Oracle数据库来进行查询对比.下面,我们就来看看,如何使用java代码来连接数据库,并且取出我们想要的数值. 首先,java中如果要连接Oracle数据库,需要jdbc的 ...
- 一个非常标准的Java连接Oracle数据库的示例代码
最基本的Oracle数据库连接代码(只针对Oracle11g): 1.右键项目->构建路径->配置构建路径,选择第三项“库”,然后点击“添加外部Jar”,选择“D:\Oracle\app\ ...
- Java连接Oracle数据库的示例代码
最基本的Oracle数据库连接代码(只针对Oracle11g): 1.右键项目->构建路径 ->配置构建路径,选择第三项“库”,然后点击“添加外部Jar”,选择 “D:\Oracle\ap ...
- Java连接oracle数据库的两种常用方法
1. 使用thin连接 由于thin驱动都是纯Java代码,并且使用TCP/IP技术通过java的Socket连接上Oracle数据库,所以thin驱动是与平台无关的,你无需安装Oracle客户端,只 ...
随机推荐
- MongoDB数据库的操作
一.操作MongoDB数据库 1.创建数据库 语法:ues 注意:如果数据库不存在则再创建数据库,否则切换到指定的 数据库!如果刚刚创建的数据不在列表中,如果需要显示这个数 据库,那么需要在刚刚创建的 ...
- spring boot 是如何加载jackson的?
Spring Boot 自动引入jackson: 通过:Spring-Boot-starter-web Jackson自动配置 这里的configurations是读取的这里: 通过反射加载Jacks ...
- C++11随机数的正确打开方式
C++11随机数的正确打开方式 在C++11之前,现有的随机数函数都存在一个问题:在利用循环多次获取随机数时,如果程序运行过快或者使用了多线程等方法,srand((unsigned)time(null ...
- oracle常用函数(1)
oracle有很强大的函数功能,常用的字符处理函数如下: SQL> select initcap('hello') from dual;//将首字母转为大写 INITCAP('HELLO')-- ...
- python 父子节点生成字典
lines = [(1, 1, '父1节点'), (2, 1, '1-2'), (3, 1, '1-3'), (4, 3, '1-3-4'), (5, 3, '1-3-5'), (6, 3, '1-3 ...
- Core Graphics Paths
Paths中的几个重要元素 Points void CGContextMoveToPoint ( CGContextRef c, CGFloat x, CGFloat y ); 指定 ...
- 【leetcode】 463. Island Perimeter
题目: 以二维数组形式表示坐标岛屿,求边长. 例子: [[0,1,0,0], [1,1,1,0], [0,1,0,0], [1,1,0,0]] Answer: 16 Explanation: The ...
- heartbeat如何避免脑裂
heartbeat避免脑裂的方法 1)增加冗余的心跳线,例如双线条线,尽量减少脑裂发生的机会 2)启用磁盘锁:正在服务的一方锁住了共享磁盘,脑裂发生时,让对方完全抢走资源,如果占用资源的一方不解锁 , ...
- java面试(进程和线程)04
1.并行和并发有什么区别? 并行:多个处理器或多核处理器同时处理多个任务. 并发:多个任务在同一个 CPU 核上,按细分的时间片轮流(交替)执行,从逻辑上来看那些任务是同时执行. 2.线程和进程的区别 ...
- List&LinQ
DataTable会将整个数据表接收过来,可真正使用的数据未必是整个数据表所有的数据. 使用List可以接收需要使用的数据 public class Data_Model { public strin ...