jdbc连接oracle数据库
/**
* 通过改变配置文件来连接不同数据库
*/
package com.xykj.jdbc; import static org.junit.Assert.*; import java.io.InputStream;
import java.sql.Connection;
import java.sql.Driver;
import java.util.Properties; import org.junit.Test; public class JDBCTest0 { public Connection getConnection() throws Exception{
String driverclass = null;
String jdbcUrl = null;
String user = null;
String password = null; InputStream in = getClass().getClassLoader().getResourceAsStream("jdbc.properties");
Properties properties = new Properties();
properties.load(in);
driverclass = properties.getProperty("driver");
jdbcUrl = properties.getProperty("jdbcUrl");
user = properties.getProperty("user");
password = properties.getProperty("password"); Driver driver = (Driver)Class.forName(driverclass).newInstance();
Properties info = new Properties();
info.put("user",user);
info.put("password", password);
Connection connection = driver.connect(jdbcUrl, info); return connection; }
@Test
public void testGetConnection() throws Exception{ System.out.println(getConnection());
} }
/*** jdbc连接oracle数据库**/
1 package com.xykj.jdbc; import static org.junit.Assert.*;
import java.sql.*;
import java.util.Properties; import org.junit.Test; public class JDBCTest { /**
* Driver是一个接口:数据库厂商必须提供实现的接口,能从其中获取数据库连接。
* 1.加入oracle驱动
* 1>新建lib目录,复制粘贴jar包放入lib。
* 2>右键jar包,build path,add 加入到类路径下。
*/
@Test
public void testDriver() {
ResultSet res=null; //创建一个结果集对象
PreparedStatement pre = null; //创建预编译语句对象,一般都是用这个而不用Statement
Connection connection = null; //创建一个数据库连接
try
{ //1.创建一个Driver实现类的对象
Driver driver = new oracle.jdbc.driver.OracleDriver(); //加载Oracle驱动程序 //2.准备连接数据库的基本信息:url,user,password
String url = "jdbc:oracle:thin:@127.0.0.1:1521:orcl";
Properties info = new Properties();
info.put("user", "system");
info.put("password", "sys"); //3.调用Driver接口的connect(url,info)获取数据库连接
connection = driver.connect(url, info); //获取连接
System.out.println(connection);
System.out.println("数据库连接成功!"); //4.对数据库进行操作
String sql = "select * from Stu where Name = ?"; //预编译语句,?代表参数
pre = connection.prepareStatement(sql); //实例化预编译语句
pre.setString(1, "张三"); // 设置参数,前面的1表示参数的索引,而不是表中列名的索引
res = pre.executeQuery(); //执行查询
while(res.next()) System.out.println("姓名:"+res.getString("name")
+ "性别:"+res.getString("sex")
+ "年龄:"+res.getString("age"));
}
catch (Exception e )
{
e.printStackTrace();
}
finally
{
try
{
// 逐一将上面的几个对象关闭,因为不关闭的话会影响性能、并且占用资源
// 注意关闭的顺序,最后使用的最先关闭
if(res != null)
res.close();
if(pre != null)
pre.close();
if(connection != null)
connection.close();
System.out.println("数据库连接已关闭!");
}
catch(Exception e){
e.printStackTrace();
}
}
}
}
jdbc连接oracle数据库的更多相关文章
- JDBC连接Oracle数据库的问题
场景:最近做一个java web项目,使用jdbc连接Oracle数据库,遇到了两个问题. 问题1:jdbc连接不上Ubuntu Oracle服务器? 后来发现这个问题的原因是由于连接字符串写错了,修 ...
- jdbc连接oracle数据库问题
下面是JDBC连接oracle数据库流程: String dbURL = "jdbc:oracle:thin:@url:1521:service_name"; String use ...
- JDBC 连接Oracle 数据库,JDBC 连接Mysql 数据库
首先是JDBC 连接Oracle 数据库 package com.util; import com.pojo.UserInfo; import java.sql.*; public class DB ...
- JAVA通过JDBC连接Oracle数据库详解【转载】
JAVA通过JDBC连接Oracle数据库详解 (2011-03-15 00:10:03) 转载▼http://blog.sina.com.cn/s/blog_61da86dd0100q27w.htm ...
- jdbc连接oracle数据库字符串
jdbc连接oracle数据库有两种方式: 连接数据库SID 连接数据库service_name 当连接SID时,字符串如下: url::orcl1" password="xxxx ...
- JDBC连接Oracle数据库时出现的ORA-12505错误及解决办法
转载至http://www.blogjava.net/itspy/archive/2007/12/20/169072.html Oracle 问题描述:今天使用jdbc连接oracle 10.2.0. ...
- 简单的JDBC连接oracle数据库例子
java连接Oracle数据库 JDBC(Java Data Base Connectivity,java数据库连接),那么我们该如何用java进行数据库的连接呢. import java.sql.C ...
- JDBC 连接Oracle数据库 各个对象的理解
JDBC: 1. **代码实现:(连接oracle数据库) 1.导入驱动jar包 2.注册驱动 Class.forName("oracle.jdbc.driv ...
- Eclipse通过jdbc连接oracle数据库
首先要有包 然后,在项目中加载进去- 最后就是代码了 import java.sql.*;public class GetConn {public Connection getConnection() ...
随机推荐
- 6. 终端工具Xmanager使用技巧
1. 新建绘画使用终端连接服务器 2. 设置终端类型和编码 3. 设置终端外观,包括字体颜色等等 4. 设置默认上传路径和下载路径
- NSFileManager
//返回一个字符串数组(子路径), 并且不包含文件夹 [[NSFileManager defaultManager] contentsOfDirectoryAtPath:folderPath erro ...
- iOS中多线程原理与runloop介绍
一.线程概述 有些程序是一条直线,起点到终点:有些程序是一个圆,不断循环,直到将它切断.直线的如简单的Hello World,运行打印完,它的生命周期便结束了,像昙花一现那样:圆如操作系统,一直运行直 ...
- leetcode 100. Same Tree
Given two binary trees, write a function to check if they are equal or not. Two binary trees are con ...
- 两款基于Jquery的图表插件
一.EasyPieChart 页面加载时,运行initPieChart()函数,调用easyPieChart()函数,显示出图表. 代码: var initPieChart = function() ...
- 剑指Offer 矩形覆盖
题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 解法,还是斐波那契数列 AC代码: class So ...
- PyQt4关闭最大化最小化取消双击最大化
self.setWindowFlags(Qt.Window | Qt.WindowTitleHint | Qt.WindowCloseButtonHint | Qt.CustomizeWindowHi ...
- mysql查看字段注释(帮助信息)指令
select column_name,column_comment from INFORMATION_SCHEMA.columns where table_name='my_table'; 或者 sh ...
- gedit配置记
gedit配置记 起因 突然感觉sublime用用这里那里不方便(虽然很好看> >),然后稍微手调了一下gedit发现gedit还是非常可用的(雾)... 阶段一 我感觉sublime各种 ...
- Appium 服务器参数
# Appium 服务器参数 使用方法: `node . [标志]` ## 服务器标志所有的标志都是可选的,但是有一些标志需要组合在一起才能生效. <expand_table> |标志|默 ...