Java通用oracle和mysql数据库连接
Java中oracle数据库连接写一个通用类UBUtil(){}
import java.io.InputStream;
import java.sql.*;
import java.util.Properties; public class DBUtil {
private static Connection con;
private static String url;
private static String user;
private static String pwd; public DBUtil() { }
static {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");/*如果是MySQL就改为Class.forName("com.mysql.jdbc.Driver");*/
InputStream is = DBUtil.class.getResourceAsStream("/db.properties");//db.properties 是一个用户配置文件传用户名密码
Properties prop=new Properties();
prop.load(is);
url=prop.getProperty("url");
user=prop.getProperty("user");
pwd=prop.getProperty("password");
con = DriverManager.getConnection(url, user, pwd);
}catch (Exception e){
}
}
public static ResultSet find(String sql){
con=getCon();
try {
Statement smt=con.createStatement();
ResultSet rs=smt.executeQuery(sql);
return rs;
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}
public static ResultSet find(String sql,Object ...pram){//...pram数组
con=getCon();
try {
PreparedStatement smt=con.prepareStatement(sql);
for (int i=0;i<pram.length;i++){
smt.setObject(i+1,pram[i]);
}
ResultSet rs=smt.executeQuery();
return rs;
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}
public static void insert(String sql,Object ...pram){//...pram数组
con=getCon();
try {
PreparedStatement smt=con.prepareStatement(sql);
for (int i=0;i<pram.length;i++){
smt.setObject(i+1,pram[i]);
}
smt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static Connection getCon(){
try {
if(con==null||con.isClosed())
con = DriverManager.getConnection(url, user, pwd);
} catch (SQLException e) {
e.printStackTrace();
}
return con;
}
}
最后补一下db.properties中格式:
#db.properties
#数据配置文件
url=jdbc:oracle:thin:@localhost:1521:XE #或者url=::thin:@localhost:1521:xe
#url=jdbc:mysql://127.0.0.1:3306/diarydb?useUnicode=true&characterEncoding=UTF-8 #mysql的url
user=root
password=password
Java通用oracle和mysql数据库连接的更多相关文章
- JAVA连接ACCESS、MYSQL、SQLSEVER、ORACLE数据库
. 概要 1.1 JDBC概念 JDBC(Java Database Connectivity)是Java语言为了支持SQL功能而提供的与数据库连接的用户的接口.JDBC中包含了一组由(Java)语言 ...
- Hibernate常用的Java数据类型映射到mysql和Oracle
研究了常用的Java基本数据类型在mysql和oracle数据库的映射类型.这里使用的是包装类型做研究,一般在hibernate声明的时候最好不要用基本类型,因为数据库中的null空数据有可能映射为基 ...
- Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常解决
Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常解决 I. 概述 1.1 JDBC概念 JDBC(Java Database Connectivity ...
- mysql数据库连接出问题,提示超时 java.sql.SQLException: An attempt by a client to checkout a Connection has timed out.解决办法
mysql数据库连接出问题,提示超时,后来发现问题在于连接mysql数据库的jar包跟数据库版本不对应导致的,更换jar包一致就解决了.
- IntelliJ IDEA web项目进行数据库连接时出现java.lang.ClassNotFoundException: com.mysql.jdbc.Driver错误解决办法
首先看报错信息: 意思是找不到类: com.mysql.jdbc.Driver.也就是说tomcat找不到MySQL数据库连接要用的jar包! 出现这种错误的原因是: 项目中没有导入这个jar包, ...
- Java Web(九) JDBC及数据库连接池及DBCP,c3p0,dbutils的使用
DBCP.C3P0.DBUtils的jar包和配置文件(百度云盘):点我下载 JDBC JDBC(Java 数据库连接,Java Database Connectify)是标准的Java访问数据库的A ...
- mybatis批量增、删、改(更新)操作oracle和mysql批量写法小记
前言:用mybatis也好几年了,mybatis在批量的增删操作也写起来也是比较简单的,只有批量更新这一块是特别坑,特此记录. 注:本文主要用来记录oracle和mysql数据库在使用mybatis的 ...
- 第77节:Java中的事务和数据库连接池和DBUtiles
第77节:Java中的事务和数据库连接池和DBUtiles 前言 看哭你,字数:8803,承蒙关照,谢谢朋友点赞! 事务 Transaction事务,什么是事务,事务是包含一组操作,这组操作里面包含许 ...
- [转载]DB2与ORACLE、MYSQL比较2
原文地址:DB2与ORACLE.MYSQL比较2作者:欣颖 4.2 Oracle9i Oracle的产品战略是每12到18个月发布一个主要版本.主要发行版本所遵循的命名战略在PC领域中更为常见,它不 ...
随机推荐
- 北京Uber优步司机奖励政策(4月19日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- 论文阅读---Reducing the Dimensionality of Data with Neural Networks
通过训练多层神经网络可以将高维数据转换成低维数据,其中有对高维输入向量进行改造的网络层.梯度下降可以用来微调如自编码器网络的权重系数,但是对权重的初始化要求比较高.这里提出一种有效初始化权重的方法,允 ...
- centos7 svn搭建
一.安装 : yum install subversion 二.检验是否安装成功: svnserve --version 三.创建要存放资源的路径: mkdir -p /var/svn //该路径也是 ...
- 单元测试——隔离神器:mockito
mockito,一个让人着迷的单元测试隔离框架.对比了easymock,jmock,jmockito,最终选择了它. 为什么用他 接口语法简洁.自然.写起来像在说话,很舒服. 文档更完整.让学习曲线更 ...
- java实现哈弗曼树
O(∩_∩)O~~ 概述 我想学过数据结构的小伙伴一定都认识哈弗曼,这位大神发明了大名鼎鼎的“最优二叉树”,为了纪念他呢,我们称之为“哈弗曼树”.哈弗曼树可以用于哈弗曼编码,编码的话学问可就大了,比如 ...
- STM平台增加性能测试/稳定性测试部分【一】
前置 我之前写了一个接口自动化平台的,后期因为一个原因删除了. 现在,在此平台的基础上,我又增加了性能/稳定性的功能 它的前端大概是这样: 数据解析: 图表展示: 我将稳定性及性能归与一套方案去编写, ...
- LintCode——A+B问题
A+B问题:给出两个整数a和b,求他们的和,但不能使用+等数学运算符. 注意事项: 1.A与B是32位整数 2.可使用位运算符 样例:如果 a=1 并且 b=2,返回3 一.非递归 public cl ...
- 洛谷P1585 魔法阵
题目传送门 这题就是一个有技巧的DFS+一大堆乱七八糟的剪枝 进行DFS时注意一下以下点 根据题意,我们可以把DFS分成两块,即1--n*m/2与n*m/2--n*m,第一块边找边记录,第二块就开始计 ...
- swap分区和内存
1 查看swap 空间大小(总计): # free -m 默认单位为k, -m 单位为M total used fr ...
- dom学习要点
Dom操作 1.文本内容操作 - innerText:操作文本 - innerHtml:操作全内容 //innerText标签: <div id='i2' ><a>土味程序员& ...