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() ...
随机推荐
- 用js判断页面是否加载完毕
用document.onreadystatechange的方法来监听状态改变, 然后用document.readyState == "complete"判断是否加载完成 docum ...
- Python自动化之线程进阶篇(二)
queue队列 class queue.Queue(maxsize=0) #先入先出 class queue.LifoQueue(maxsize=0) #后入先出 class queue.Priori ...
- time()函数,dirname(__FILE__) 的使用总结
time()函数将返回从1970-1-1 0:0:0到当前时间的秒数.(整型) dirname(__FILE__) php中定义了一个很有用的常数,即 __file__ 这个内定常数是当前php程序的 ...
- TortoiseSVN使用方法
1.初始化本地SVN目录,在某个文件夹鼠标右键点击. 初始化后目录 2.将某个目录下代码,添加到SVN目录中. 3.将添加进去代码提取出来. 在某 ...
- python traceback 变量值
import sys import traceback import cgitb def handleException(excType, excValue, trace): print 'error ...
- sed使用的并不是完全的正则表达式
经过实验发现,命令sed 's/pattern/replacement/' file中,pattern使用的并不是完全的正则表达式,而如果想使用正则表达式,需要使用sed命令的 -r 选项: sed ...
- LINUX优化得很好的sysctl.conf配置
最近找了个不错的sysctl.conf的优化参数,在网站响应上已经算不错了的,time超时连接据说几乎为0了. 系统:centos 5.x sysctl.conf配置参数: kernel.msgmn ...
- ITIL与ITSM的联系与区别
1.ITIL(IT Infrastructure Library)是CCTA(英国国家计算机和电信局)于20世纪80年代末开发的一套IT服务管理标准库,它把英国各个行业在IT管理方面的最佳实践归纳起来 ...
- 详解 Too many open files
运行在Linux系统上的Java程序可能会出现"Too many open files"的异常情况,且常见于高并发访问文件系统,多线程网络连接等场景. 程序经常访问的文件.sock ...
- C语言宏定义时#(井号)和##(双井号)的用法1
#在英语里面叫做 pound 在C语言的宏定义中,一个#表示字符串化:两个#代表concatenate 举例如下: #include <iostream> void quit_comman ...