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领域中更为常见,它不 ...
随机推荐
- 20145234黄斐《java程序设计》实验四—Android程序设计
实验过程: JDK.Android Studio的安装: 参见卢晓明博客:http://www.cnblogs.com/lxm20145215----/p/5444207.html 注意事项:解决Fe ...
- python基础学习1-面向对象
#!/usr/bin/env python # -*- coding:utf-8 -*- class Foo:#定义类 def mail(self,email,message):#定义类的方法 pri ...
- Object C学习笔记9-字符串NSMutableString
NSMutableString类继承自NSString,所以在NSString中的方法在NSMutableString都可以使用. NSMutableString和NSString的区别在于NSMut ...
- 最具有性价比的语言javascript之介绍篇
虽然最近几年javascript很火.但很多程序员对javascript重视程度不够,所以对javascript的高级应用不甚了解.认为javascript仅仅只是一门脚本语言,作用就是表单验证,网页 ...
- python 实现redis订阅发布功能
redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set ...
- How to create a custom action type with a custom control (BarCheckItem), associated with it
https://www.devexpress.com/Support/Center/Example/Details/E1977/how-to-create-a-custom-action-type-w ...
- Python之Django的Model详解
一.创建数据库 创建数据库 进入数据库: mysql -uroot -p 创建数据库: CREATE DATABASE test1 CHARSET=utf8; 连接数据库 虚拟环境中安装数据库模块:p ...
- [Processing] 弹球
PVector localPos = new PVector(0,0);//起始位置 PVector velocity;//速度方向 float speed = 20;//速度大小 void setu ...
- CentOS7上部署ASP.Net Core 2.2应用
前言 在CentOS7上部署ASP.Net Core应用是我的技术路线验证的一部分,下一个产品计划采用ASP.Net Boilerplate Framework开发.因此需要求提前进行一下技术验证,在 ...
- 402. Remove K Digits/738.Monotone Increasing Digits/321. Create Maximum Number
Given a non-negative integer num represented as a string, remove k digits from the number so that th ...