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(高级篇)相关推荐

  1. java http 面试题_Java面试高级篇—说说TCP,UDP和socket,Http之间联系和区别面试题12期...

    TCP协议 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的.可靠的.基于字节流的传输层通信协议,由IETF的RFC 793定义.在简化的计算机网络O ...

  2. Java EE与Java SE:Oracle是否放弃了企业软件?

    Java Enterprise Edition是全球Java社区中最大的困惑来源之一. 就像<星球大战>和<星际迷航 >之间的区别一样,对于"原力觉醒"是他 ...

  3. Oracle Java Mission Control:终极指南

    "我们喜欢关注Mikhail Vorontsov的博客,并获得他对Java Performance相关问题的看法. 我们曾多次被问到Takipi的Java错误分析与Java Mission ...

  4. oracle java 并发_【转】JAVA并发教程(ORACLE官网资料)

    本文是Oracle官方的Java并发相关的教程,感谢并发编程网的翻译和投递. 计算机的使用者一直以为他们的计算机可以同时做很多事情.他们认为当其他的应用程序在下载文件,管理打印队列或者缓冲音频的时候他 ...

  5. Java平台,标准版Oracle JDK 9中的新功能

    Java平台,标准版 Oracle JDK 9中的新增功能 版本9 E77563-05 2017年9月 JDK 9中的新功能概述 Java Platform,Standard Edition 9是一个 ...

  6. Java菜鸟到大牛学习路线之高级篇

    这是一套Java菜鸟到大牛的学习路线之高级教程,由工作了10年的资深Java架构师整理. 01-java高级架构师设计-基础深入         J2SE深入讲解         Java多线程与并发 ...

  7. Oracle Java Cloud系列(02)——创建Java云的应用服务器实例 及 数据库云实例

    本指南为整个系列的第二篇,介绍如何创建Oracle数据库云服务与Java云服务,文章整体将分为下面三个部分: 第一步:创建服务前准备 - 密钥与云存储容器 第二步:创建数据库云服务 第三步:创建Jav ...

  8. 01500105_MLDN-魔乐科技-李兴华【Java核心技术】_JDBC连接Oracle数据库

    注明本链接博客为李兴华老师 http://blog.sina.com.cn/ownmldn 前一篇:01500105_MLDN-魔乐科技-李兴华[Java核心技术]_JDBC连接Oracle数据库 后 ...

  9. java 第一弹:最新Oracle JDK 下载安装与配置环境变量

    java 第一弹:最新Oracle JDK 下载安装与配置环境变量 1.下载网站甲骨文官网https://www.oracle.com/java/technologies/javase-downloa ...

最新文章

  1. 【学习笔记】和式(《具体数学》第二章)
  2. C#之自己定义的implicit和explicit转换
  3. Python3 下找不到urllib2的问题
  4. 服务器常见远程管理网口及登录方式
  5. spring 作用域理解
  6. Android项目目录结构中各个文件夹的作用
  7. 解析多层list_基于laravel5.2进行中间件源码的解析
  8. Servlet的request.getRemoteAddr()方法回去地址是0:0:0:0:0:0:0:1
  9. 架构 简述负载均衡和CDN技术
  10. matlab求解拉格朗日第一方程,matlab求解拉格朗日方程肿么编程
  11. php-screw 安装,PHP_SCREW安装
  12. 第三方支付-分账接口对接
  13. 胡雪岩与王有龄交浅言深的那些事
  14. JDK1.8 Collection知识点与代码分析--TreeMap
  15. 电脑端10大图片处理类神器
  16. 入坑rockchip 基础信息资料
  17. 网盘资源本地看!阿里云盘转本地硬盘教程
  18. Java OutputStream.write()的功能简介说明
  19. 用 SimCLR 提高自监督与半监督学习效果
  20. 码云的一些总结(普通用户版本仓库大于500M上传受限制)

热门文章

  1. 超详细 1小时学会Python输入和输出!
  2. C语言十个字母用冒泡法排序,冒泡排序法(C语言) - osc_wq8j2a9a的个人空间 - OSCHINA - 中文开源技术交流社区...
  3. uefi和legacy的区别
  4. tensorflow_yolov3 神经网络训练时train_loss和test_loss出现NaN(not a number)的原因和解决方法
  5. python sklearn.svm.SVC() 使用方法
  6. CentOS6.5安装Redis3.2.8版本
  7. android局部布局替换,Android 局部布局替换的实现方式
  8. linux安装libfastcommon+fastdfs+nginx
  9. 线性八叉树_octree八叉树数据结构原理与实现
  10. python添加系统环境win7_python环境配置(基于win7 x64)