package dbex;

import java.io.Closeable;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties; import org.apache.commons.dbutils.DbUtils;
/**
*
* @ClassName: TestOraDB
* @Description: Oracle数据库测试 JDBC
* @author penny
* @date 2017年11月24日 上午11:40:01
*
*/
public class DBUtil {
/**
* 连接对象
*/
public static Connection conn = null;
/**
* 预处理SQL语句
*/
public static PreparedStatement prst=null;
/**
* 返回结果集
*/
public static ResultSet rs = null;
public static Properties pro=null; static{
try {
InputStream in = DBUtil.class.getResourceAsStream("../database.properties");
pro = new Properties();
pro.load(in);
Class.forName(pro.getProperty("driver"));
} catch (Exception e) {
System.out.println("加载驱动失败:"+e.getMessage());
}
}
/**
*
* @Title: getConnection
* @Description: 获取连接
* @param @return
* @param @throws SQLException 设定文件
* @return Connection 返回类型
* @throws
*/
public static Connection getConnection() throws SQLException{
// System.out.println(pro.getProperty("url"));
// System.out.println(pro.getProperty("user"));
// System.out.println(pro.getProperty("password"));
conn=DriverManager.getConnection(pro.getProperty("url"), pro.getProperty("user"), pro.getProperty("password"));
if(conn==null){
return null;
}else{
return conn;
}
}
/**
*
* @Title: executeQuery
* @Description: 执行查询
* @param @param sql
* @param @throws SQLException
* @throws
*/
public static void executeQuery(String sql) throws SQLException{
prst = (PreparedStatement) conn.prepareStatement(sql);
rs=prst.executeQuery();
while (rs.next()) {
System.out.println(rs.getString(1)+"\t"+rs.getString(2));
}
} public static void closeAll
(Connection a, PreparedStatement b, ResultSet c) throws IOException{
DbUtils.closeQuietly(a, b, c);
} public static void main(String[] args) throws Exception {
DBUtil db =new DBUtil();
db.getConnection();
db.executeQuery("select * from ex_clob");
db.closeAll(conn, prst, rs);
}
} 下面是连接配置文件database.properties ### Oracle
url=jdbc:oracle:thin:@localhost:1521:orcl
user=scott
password=tiger
driver=oracle.jdbc.driver.OracleDriver
### MySql
#url=jdbc:mysql://localhost:3306/libweb
#driver=com.mysql.jdbc.Driver
#user=root
#password=

  

JDBC 复习1 DBUtil的更多相关文章

  1. JDBC复习

    -----------------------------------------JDBC复习----------------------------------------- 1.JDBC (Jav ...

  2. JDBC复习2

    前面复习了一些基础知识以及如何抽取一些常用的代码,接下来就结合junit4做一个增删改查的小demo 重点是这么几个步骤:1.创建连接 2.编写sql语句 3.编写sql语句的载体 4.如果是Prep ...

  3. JDBC 复习4 批量执行SQL

    1使用jdbc进行批量执行SQL在实际的项目开发中,有时候需要向数据库发送一批SQL语句执行,这时应避免向数据库一条条的发送执行,而应采用JDBC的批处理机制,以提升执行效率. package dbe ...

  4. JDBC 复习3 存取Oracle大数据 clob blob

    1 目录结构记得导包咯 mysql oracle 2 代码,DBUtil工具类见前面的随笔博文 package dbex.mysql; import java.io.BufferedReader; i ...

  5. JDBC 复习2 存取mysql 大数据

    大数据也称之为LOB(Large Objects),LOB又分为:clob和blob,clob用于存储大文本,blob用于存储二进制数据 mysql的大数据分为2种 blob 和 text ,没有cl ...

  6. JDBC复习1

    1.什么是JDBC JDBC是java数据库连接技术的简称(Java DataBase Connectivity) jdbc是接口,jdbc驱动才是接口的实现,负责连接各种不同的数据库.jdbc的AP ...

  7. JDBC 复习

    概念 Java DataBase Connectivity java数据库连接 定义了操作所有关系型数据库的规则(接口),不同的数据库厂商编写类实现这些接口,这些类就叫数据库驱动,使得用户只需要使用统 ...

  8. JDBC 复习5 mysql 的自增长主键 auto_increment

    MySQL 自增长主键 (1)如果把一个NULL插入到一个AUTO_INCREMENT数据列里去,MySQL将自动生成下一个序列编号.编号从1开始,并1为基数递增. (2)把0插入AUTO_INCRE ...

  9. 封装jdbc、DBUtil

    package com.cmos.util; import java.io.IOException; import java.io.InputStream; import java.sql.Conne ...

随机推荐

  1. SurfaceView动态背景效果实现

    package com.loaderman.customviewdemo; import android.content.Context; import android.graphics.*; imp ...

  2. Spring走向注解驱动编程

    SpringFramework的两大核心,IOC(Inversion of control)控制反转和DI(Dependency Inject)依赖注入,其推崇的理念是应用系统不应以java代码的方式 ...

  3. 深入理解Java虚拟机 - 书评

    谈起<深入理解java虚拟机>这本书,让我印象深刻的就是换工作跳槽面试的时候,当时刚进入java开发这个行业的时候,平时只是做一些对数据库的增删改查等功能,当自己技术增长一些的时候,就开始 ...

  4. python基础之坑爹正则表达式

    python基础之坑爹正则表达式 概述 re模块就是python语言中的正则表达式,拆出来单独写一条blog是因为正则表达式本身就是比较庞大的知识,写具体些让自己以后方便查找. IP: ^(25[0- ...

  5. git的压缩原理;git的pack文件;git gc操作原理;Resolving deltas: 100% (2695/2695), done.做了什么

    文件含义 verify-pack -- validate packed git archive files .git/objects/pack/.pack为压缩后的文件,把.git/objects/下 ...

  6. CentOS 7启动与切换图形界面

    安装图形界面 默认情况下是不会安装图形界面的,所以需要自己手动安装,步骤如下: 1.开启系统,以root身份进入 安装X(X Window System),命令如下: yum groupinstall ...

  7. Jenkins持续集成企业实战

    阅读目录: Jenkins持续集成企业实战1.1 目前主流网站部署的流程1.2 Jenkins持续集成简介1.3 Jenkins持续集成组件1.4 Jenkins平台安装部署1.5 Jenkins相关 ...

  8. CentOS7使用yum和源码升级内核

    原文:https://blog.csdn.net/bayin4937/article/details/100949870 两种方式升级内核 一.yum升级内核 参考:https://blog.csdn ...

  9. python lanbda匿名函数(20)

    在python开发中常规的函数在调用之前都需要先声明,而python还有一种匿名函数,有速写函数的功能并且匿名函数不需要声明也没有函数名字,完全不需要担心函数名冲突,具体的妙用还需要从实战练习中多多积 ...

  10. pytorch中F.softmax(x1,dim = -1) dim 取值测试及验证

    # -*- coding: utf-8 -*- """ Created on Mon May 27 11:09:52 2019 @author: jiangshan &q ...