Java中oracle数据库连接写一个通用类UBUtil(){}

  1. import java.io.InputStream;
  2. import java.sql.*;
  3. import java.util.Properties;
  4.  
  5. public class DBUtil {
  6. private static Connection con;
  7. private static String url;
  8. private static String user;
  9. private static String pwd;
  10.  
  11. public DBUtil() {
  12.  
  13. }
  14. static {
  15. try {
  16. Class.forName("oracle.jdbc.driver.OracleDriver");/*如果是MySQL就改为Class.forName("com.mysql.jdbc.Driver");*/
  17. InputStream is = DBUtil.class.getResourceAsStream("/db.properties");//db.properties 是一个用户配置文件传用户名密码
  18. Properties prop=new Properties();
  19. prop.load(is);
  20. url=prop.getProperty("url");
  21. user=prop.getProperty("user");
  22. pwd=prop.getProperty("password");
  23. con = DriverManager.getConnection(url, user, pwd);
  24. }catch (Exception e){
  25. }
  26. }
  27. public static ResultSet find(String sql){
  28. con=getCon();
  29. try {
  30. Statement smt=con.createStatement();
  31. ResultSet rs=smt.executeQuery(sql);
  32. return rs;
  33. } catch (SQLException e) {
  34. e.printStackTrace();
  35. return null;
  36. }
  37. }
  38. public static ResultSet find(String sql,Object ...pram){//...pram数组
  39. con=getCon();
  40. try {
  41. PreparedStatement smt=con.prepareStatement(sql);
  42. for (int i=0;i<pram.length;i++){
  43. smt.setObject(i+1,pram[i]);
  44. }
  45. ResultSet rs=smt.executeQuery();
  46. return rs;
  47. } catch (SQLException e) {
  48. e.printStackTrace();
  49. return null;
  50. }
  51. }
  52. public static void insert(String sql,Object ...pram){//...pram数组
  53. con=getCon();
  54. try {
  55. PreparedStatement smt=con.prepareStatement(sql);
  56. for (int i=0;i<pram.length;i++){
  57. smt.setObject(i+1,pram[i]);
  58. }
  59. smt.executeUpdate();
  60. } catch (SQLException e) {
  61. e.printStackTrace();
  62. }
  63. }
  64. public static Connection getCon(){
  65. try {
  66. if(con==null||con.isClosed())
  67. con = DriverManager.getConnection(url, user, pwd);
  68. } catch (SQLException e) {
  69. e.printStackTrace();
  70. }
  71. return con;
  72. }
  73. }

最后补一下db.properties中格式:

  1. #db.properties
  2. #数据配置文件
  3. url=jdbc:oracle:thin:@localhost:1521:XE #或者url=::thin:@localhost:1521:xe
  4. #url=jdbc:mysql://127.0.0.1:3306/diarydb?useUnicode=true&characterEncoding=UTF-8 #mysql的url
  5. user=root
  6. password=password

  

  

  

Java通用oracle和mysql数据库连接的更多相关文章

  1. JAVA连接ACCESS、MYSQL、SQLSEVER、ORACLE数据库

    . 概要 1.1 JDBC概念 JDBC(Java Database Connectivity)是Java语言为了支持SQL功能而提供的与数据库连接的用户的接口.JDBC中包含了一组由(Java)语言 ...

  2. Hibernate常用的Java数据类型映射到mysql和Oracle

    研究了常用的Java基本数据类型在mysql和oracle数据库的映射类型.这里使用的是包装类型做研究,一般在hibernate声明的时候最好不要用基本类型,因为数据库中的null空数据有可能映射为基 ...

  3. Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常解决

    Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常解决 I. 概述 1.1 JDBC概念 JDBC(Java Database Connectivity ...

  4. mysql数据库连接出问题,提示超时 java.sql.SQLException: An attempt by a client to checkout a Connection has timed out.解决办法

    mysql数据库连接出问题,提示超时,后来发现问题在于连接mysql数据库的jar包跟数据库版本不对应导致的,更换jar包一致就解决了.

  5. IntelliJ IDEA web项目进行数据库连接时出现java.lang.ClassNotFoundException: com.mysql.jdbc.Driver错误解决办法

    首先看报错信息: 意思是找不到类:  com.mysql.jdbc.Driver.也就是说tomcat找不到MySQL数据库连接要用的jar包! 出现这种错误的原因是: 项目中没有导入这个jar包, ...

  6. Java Web(九) JDBC及数据库连接池及DBCP,c3p0,dbutils的使用

    DBCP.C3P0.DBUtils的jar包和配置文件(百度云盘):点我下载 JDBC JDBC(Java 数据库连接,Java Database Connectify)是标准的Java访问数据库的A ...

  7. mybatis批量增、删、改(更新)操作oracle和mysql批量写法小记

    前言:用mybatis也好几年了,mybatis在批量的增删操作也写起来也是比较简单的,只有批量更新这一块是特别坑,特此记录. 注:本文主要用来记录oracle和mysql数据库在使用mybatis的 ...

  8. 第77节:Java中的事务和数据库连接池和DBUtiles

    第77节:Java中的事务和数据库连接池和DBUtiles 前言 看哭你,字数:8803,承蒙关照,谢谢朋友点赞! 事务 Transaction事务,什么是事务,事务是包含一组操作,这组操作里面包含许 ...

  9. [转载]DB2与ORACLE、MYSQL比较2

    原文地址:DB2与ORACLE.MYSQL比较2作者:欣颖 4.2 Oracle9i  Oracle的产品战略是每12到18个月发布一个主要版本.主要发行版本所遵循的命名战略在PC领域中更为常见,它不 ...

随机推荐

  1. 如何在mac上运行vue项目

    使用终端安装Vue运行环境 1.安装 Homebrew Homebrew 是osx下面最优秀的包管理工具,没有之一.先在终端查看是否已安装brew brew -v 如果返回 Homebrew 的版本号 ...

  2. sqlserver分区视图中分区列的规则

    分区列规则 分区列存在于每个成员表上,并且通过 CHECK 约束标识特定表中的可用数据.分区列必须遵守如下规则: 每个基表都拥有键值由 CHECK 约束所强制的分区列.每个表的 CHECK 约束的键范 ...

  3. React Webpack cookbook

    https://christianalfoni.github.io/react-webpack-cookbook/index.html https://fakefish.github.io/react ...

  4. springboot-web进阶(一)——表单验证

    一.概述 1.准备 先把快速入门篇的结构调整一下,按照自己的喜好或者要求调整: 2.需求 基于快速入门篇增加一个女生的需求,禁止添加未成年(18岁以下) 3.实现 第一步:在bean的属性上加对应约束 ...

  5. Java基础——注释规范

    一.注释格式分类: 1.单行(single-line)注释://…… 2.块(block)注释:/*……*/ 3.文档注释:/**……*/ javadoc有如下: 二.加注释的场景: 1. 基本注释( ...

  6. Oracletop10物理段

    Oracletop10物理段 select owner, name, type, mega, tbs from (select owner, case when segment_type = 'LOB ...

  7. OpenCV学习系列(零) Mac下OpenCV + xcode环境搭建

    # OpenCV学习系列(零) Mac下OpenCV + xcode环境搭建 [-= 博客目录 =-] 1-学习目标 1.1-本章介绍 1.2-实践内容 1.3-相关说明 2-学习过程 2.1-hom ...

  8. Django中表单的用法深探

    [转载说明:原文排版不是很好,为方便阅读,改进了排版] django的表单设计真的很棒,涉及非常多的功能,今天介绍django较为主流的几种表单使用方法.注:本文中表单与form通用.模型与model ...

  9. 一个本地DNS解析和mysql授权导致的Mysq连接失败问题(Access denied for user 'loan'@'kfcsdb1' (using password: YES))

    web:/home/web/ -u loan -p loan Enter password: ERROR 1045 (28000): Access denied for user 'loan'@'kf ...

  10. MIUI 10 已连接 但无法访问互联网 的解决方案

    wifi为 DHCP 时,我发现得到的总是已经有机器在用的 192.168.1.9  这台机器, 所以只需要手动配置一下ip就行了,随便指定一个,然后ping一下,ping不通的话就配上,然后再重新连 ...