java搭配oracle,Java联接Oracle(高级篇)
Java连接Oracle(高级篇)
在项目工程目录下新建一个config文件夹,在config文件夹里创建一个database.properties文件,配置相关Oracle数据库的driver、url、username、password。
#Oracle
jdbc.driver=oracle.jdbc.driver.OracleDriver
jdbc.url=jdbc:oracle:thin:@localhost:1521:moonlight
jdbc.username=scott
jdbc.password=tiger
在DBUtil.java中封装数据库常用操作。
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;
public class DBUtil {
public static Connection getConnection() {
Connection conn = null;
Properties props = null;
FileInputStream in = null;
try {
props = new Properties();
in = new FileInputStream("config/database.properties");
props.load(in);
in.close();
String jdbcdriver = props.getProperty("jdbc.driver");
if (jdbcdriver != null) {
System.setProperty("jdbc.driver", jdbcdriver);
}
String url = props.getProperty("jdbc.url");
String username = props.getProperty("jdbc.username");
String password = props.getProperty("jdbc.password");
conn = DriverManager.getConnection(url, username, password);
} catch (Exception e) {
e.printStackTrace();
}
return conn;
}
public static void close(Connection conn) {
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void close(PreparedStatement pstmt) {
if (pstmt != null) {
try {
pstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void close(ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
最后,在JDBCDemo.java中测试一下是否配置连接成功。
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class JDBCDemo {
public static void main(String[] args) throws Exception {
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
String keyword = "SMI";
String sql = "SELECT empno, ename, job FROM emp WHERE ename LIKE ?";
conn = DBUtil.getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "%" + keyword + "%");
rs = pstmt.executeQuery();
while (rs.next()) {
int empno = rs.getInt("empno");
String ename = rs.getString("ename");
String job = rs.getString("job");
System.out.println("empno: " + empno + ", ename: " + ename
+ ", job: " + job);
}
DBUtil.close(rs);
DBUtil.close(pstmt);
DBUtil.close(conn);
}
}
java搭配oracle,Java联接Oracle(高级篇)相关推荐
- java http 面试题_Java面试高级篇—说说TCP,UDP和socket,Http之间联系和区别面试题12期...
TCP协议 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的.可靠的.基于字节流的传输层通信协议,由IETF的RFC 793定义.在简化的计算机网络O ...
- Java EE与Java SE:Oracle是否放弃了企业软件?
Java Enterprise Edition是全球Java社区中最大的困惑来源之一. 就像<星球大战>和<星际迷航 >之间的区别一样,对于"原力觉醒"是他 ...
- Oracle Java Mission Control:终极指南
"我们喜欢关注Mikhail Vorontsov的博客,并获得他对Java Performance相关问题的看法. 我们曾多次被问到Takipi的Java错误分析与Java Mission ...
- oracle java 并发_【转】JAVA并发教程(ORACLE官网资料)
本文是Oracle官方的Java并发相关的教程,感谢并发编程网的翻译和投递. 计算机的使用者一直以为他们的计算机可以同时做很多事情.他们认为当其他的应用程序在下载文件,管理打印队列或者缓冲音频的时候他 ...
- Java平台,标准版Oracle JDK 9中的新功能
Java平台,标准版 Oracle JDK 9中的新增功能 版本9 E77563-05 2017年9月 JDK 9中的新功能概述 Java Platform,Standard Edition 9是一个 ...
- Java菜鸟到大牛学习路线之高级篇
这是一套Java菜鸟到大牛的学习路线之高级教程,由工作了10年的资深Java架构师整理. 01-java高级架构师设计-基础深入 J2SE深入讲解 Java多线程与并发 ...
- Oracle Java Cloud系列(02)——创建Java云的应用服务器实例 及 数据库云实例
本指南为整个系列的第二篇,介绍如何创建Oracle数据库云服务与Java云服务,文章整体将分为下面三个部分: 第一步:创建服务前准备 - 密钥与云存储容器 第二步:创建数据库云服务 第三步:创建Jav ...
- 01500105_MLDN-魔乐科技-李兴华【Java核心技术】_JDBC连接Oracle数据库
注明本链接博客为李兴华老师 http://blog.sina.com.cn/ownmldn 前一篇:01500105_MLDN-魔乐科技-李兴华[Java核心技术]_JDBC连接Oracle数据库 后 ...
- java 第一弹:最新Oracle JDK 下载安装与配置环境变量
java 第一弹:最新Oracle JDK 下载安装与配置环境变量 1.下载网站甲骨文官网https://www.oracle.com/java/technologies/javase-downloa ...
最新文章
- 【学习笔记】和式(《具体数学》第二章)
- C#之自己定义的implicit和explicit转换
- Python3 下找不到urllib2的问题
- 服务器常见远程管理网口及登录方式
- spring 作用域理解
- Android项目目录结构中各个文件夹的作用
- 解析多层list_基于laravel5.2进行中间件源码的解析
- Servlet的request.getRemoteAddr()方法回去地址是0:0:0:0:0:0:0:1
- 架构 简述负载均衡和CDN技术
- matlab求解拉格朗日第一方程,matlab求解拉格朗日方程肿么编程
- php-screw 安装,PHP_SCREW安装
- 第三方支付-分账接口对接
- 胡雪岩与王有龄交浅言深的那些事
- JDK1.8 Collection知识点与代码分析--TreeMap
- 电脑端10大图片处理类神器
- 入坑rockchip 基础信息资料
- 网盘资源本地看!阿里云盘转本地硬盘教程
- Java OutputStream.write()的功能简介说明
- 用 SimCLR 提高自监督与半监督学习效果
- 码云的一些总结(普通用户版本仓库大于500M上传受限制)
热门文章
- 超详细 1小时学会Python输入和输出!
- C语言十个字母用冒泡法排序,冒泡排序法(C语言) - osc_wq8j2a9a的个人空间 - OSCHINA - 中文开源技术交流社区...
- uefi和legacy的区别
- tensorflow_yolov3 神经网络训练时train_loss和test_loss出现NaN(not a number)的原因和解决方法
- python sklearn.svm.SVC() 使用方法
- CentOS6.5安装Redis3.2.8版本
- android局部布局替换,Android 局部布局替换的实现方式
- linux安装libfastcommon+fastdfs+nginx
- 线性八叉树_octree八叉树数据结构原理与实现
- python添加系统环境win7_python环境配置(基于win7 x64)