JDBC 复习1 DBUtil
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的更多相关文章
- JDBC复习
-----------------------------------------JDBC复习----------------------------------------- 1.JDBC (Jav ...
- JDBC复习2
前面复习了一些基础知识以及如何抽取一些常用的代码,接下来就结合junit4做一个增删改查的小demo 重点是这么几个步骤:1.创建连接 2.编写sql语句 3.编写sql语句的载体 4.如果是Prep ...
- JDBC 复习4 批量执行SQL
1使用jdbc进行批量执行SQL在实际的项目开发中,有时候需要向数据库发送一批SQL语句执行,这时应避免向数据库一条条的发送执行,而应采用JDBC的批处理机制,以提升执行效率. package dbe ...
- JDBC 复习3 存取Oracle大数据 clob blob
1 目录结构记得导包咯 mysql oracle 2 代码,DBUtil工具类见前面的随笔博文 package dbex.mysql; import java.io.BufferedReader; i ...
- JDBC 复习2 存取mysql 大数据
大数据也称之为LOB(Large Objects),LOB又分为:clob和blob,clob用于存储大文本,blob用于存储二进制数据 mysql的大数据分为2种 blob 和 text ,没有cl ...
- JDBC复习1
1.什么是JDBC JDBC是java数据库连接技术的简称(Java DataBase Connectivity) jdbc是接口,jdbc驱动才是接口的实现,负责连接各种不同的数据库.jdbc的AP ...
- JDBC 复习
概念 Java DataBase Connectivity java数据库连接 定义了操作所有关系型数据库的规则(接口),不同的数据库厂商编写类实现这些接口,这些类就叫数据库驱动,使得用户只需要使用统 ...
- JDBC 复习5 mysql 的自增长主键 auto_increment
MySQL 自增长主键 (1)如果把一个NULL插入到一个AUTO_INCREMENT数据列里去,MySQL将自动生成下一个序列编号.编号从1开始,并1为基数递增. (2)把0插入AUTO_INCRE ...
- 封装jdbc、DBUtil
package com.cmos.util; import java.io.IOException; import java.io.InputStream; import java.sql.Conne ...
随机推荐
- vue elementUI 表单校验(多层嵌套)
<template> <el-form :model="formData" :rules="formRule" ref="formD ...
- Inventor2018专业版软件安装激活教程
如果你安装的是Autodesk Inventor Professional 2018,那么序列号为:666-69696969,产品密钥为:797J1, 如果你安装的是Autodesk Inventor ...
- Git——起步(待续)
原文链接:Getting Started with Git
- [ML] Decision Tree & Ensembling Metholds
热身:分类问题若干策略 SVM, LR, Decision Tree的比较 同样是分类:SVM.LR.决策树,三者之间有什么优劣势呢? 答:Are decision tree algorithms l ...
- 【Leetcode_easy】824. Goat Latin
problem 824. Goat Latin solution class Solution { public: string toGoatLatin(string S) { unordered_s ...
- 【linux基础】如何开机自启动某个程序-linux工具-ubuntu
前言 实际使用中应用程序或者服务需要开机自启动,而不是人为手动开启运行,那么,该如何做呢,本文对此进行介绍. 操作过程 1. 确定系统的桌面环境: 具体可参考here; 2. 如何自启动: 博主ubu ...
- 第三章 授权——《跟我学Shiro》
转发地址:https://www.iteye.com/blog/jinnianshilongnian-2020017 目录贴:跟我学Shiro目录贴 授权,也叫访问控制,即在应用中控制谁能访问哪些资源 ...
- D-Link系列路由器漏洞挖掘
参考 http://www.freebuf.com/articles/terminal/153176.html https://paper.seebug.org/429/ http://www.s3c ...
- Docker Swarm 集群(十七)
目录 一.Docker Swarm 概念 1.集群 2.Docker Swarm 3.重要概念 swarm node service 二.创建 Swarm 集群 1.环境准备 2.创建 swarm 3 ...
- EM算法之不同的推导方法和自己的理解
EM算法之不同的推导方法和自己的理解 一.前言 EM算法主要针对概率生成模型解决具有隐变量的混合模型的参数估计问题. 对于简单的模型,根据极大似然估计的方法可以直接得到解析解:可以在具有隐变量的复杂模 ...