Java使用JDBC连接mysql、sqlserver、orcle数据库的baseDao类

本文主要是介绍Java使用JDBC连接mysql、sqlserver、orcle数据库的baseDao类,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

mysql数据库的驱动jar包:mysql-connector-java-5.1.18-bin.jar

sqlserver数据库的驱动jar包:sqljdbc.jar

orcle数据库的驱动jar包:orcle*.jar,orcle根据数据库不同版本下载不同的驱动jar包

一定要有驱动jar包才能连接数据库

BaseDao类(驱动类):


package com.dao;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;public class BaseDao {/*** 数据库连接Connection*/public Connection con;/*** 结果集ResultSet*/public ResultSet rs;/*** JDBC连接数据库路径字符串*/private String url;/*** JDBC连接数据库账户*/private String user;/*** JDBC连接数据库密码*/private String password;/*** 数据库驱动加载类*/private String driver;/*** 无参构造函数*/public BaseDao(){//连接sqlserver数据库//this.setBaseDao("com.microsoft.sqlserver.jdbc.SQLServerDriver","jdbc:sqlserver://127.0.0.1;databasename=WebFileSystem","sa","NewPassword");//连接mysql数据库this.setBaseDao("com.mysql.jdbc.Driver","jdbc:mysql://127.0.0.1/webfilesystem","root","root");//连接orcle数据库this.setBaseDao("oracle.jdbc.driver.OracleDriver","jdbc:oracle://127.0.0.1/webfilesystem","root","root");}/*** 有参构造函数*/public BaseDao(String driver, String url, String user, String password){this.driver = driver;this.url = url;this.user = user;this.password = password;}/*** 设置JDBC连接数据库路径、账号、密码*/public void setBaseDao(String driver, String url, String user, String password){this.driver = driver;this.url = url;this.user = user;this.password = password;}/*** 获取数据库连接对象Connection*/public Connection getConnection(){try {Class.forName(driver);con = DriverManager.getConnection(url,user,password);}catch (ClassNotFoundException e) {e.printStackTrace();}catch (SQLException e) {e.printStackTrace();}catch (Exception e) {e.printStackTrace();}return con;}/*** 关闭资源的函数*/public void closeAll(){if(rs != null){try {rs.close();} catch (SQLException e) {e.printStackTrace();}catch (Exception e) {e.printStackTrace();}}if(con != null){try {con.close();} catch (SQLException e) {e.printStackTrace();}catch (Exception e) {e.printStackTrace();}}}/*** 增加、删除、修改*/public int executeUpdate(String sql){int rows = 0;try {getConnection();PreparedStatement ps = con.prepareStatement(sql);rows = ps.executeUpdate();}catch (SQLException e) {e.printStackTrace();}catch (Exception e) {e.printStackTrace();}finally{closeAll();}return rows;}/*** 增加、删除、修改*/public int executeUpdate(String sql, Object[] pre){int rows = 0;try{getConnection();PreparedStatement ps = con.prepareStatement(sql);if(pre != null){for(int i = 0; i < pre.length; i++){ps.setObject(i+1, pre[i]);}}rows = ps.executeUpdate();}catch (SQLException e) {e.printStackTrace();}catch (Exception e) {e.printStackTrace();}finally{closeAll();}return rows;}/*** 增加、删除、修改*/public int executeUpdate(String sql, List<Object> pre){int rows = 0;try{getConnection();PreparedStatement ps = con.prepareStatement(sql);if(pre != null){for(int i = 0; i < pre.size(); i++){ps.setObject(i+1, pre.get(i));}}rows = ps.executeUpdate();}catch (SQLException e) {e.printStackTrace();}catch (Exception e) {e.printStackTrace();}finally{closeAll();}return rows;}/*** 查询多行多列数据到成员ResultSet对象*/public ResultSet executeQuery(String sql){try{getConnection();PreparedStatement ps = con.prepareStatement(sql);rs = ps.executeQuery();}catch (SQLException e) {e.printStackTrace();}catch (Exception e) {}return rs;}/*** 查询多行多列数据到成员ResultSet对象*/public ResultSet executeQuery(String sql, Object[] pre){try{getConnection();PreparedStatement ps = con.prepareStatement(sql);if(pre != null){for(int i = 0; i < pre.length; i++){ps.setObject(i+1, pre[i]);}}rs = ps.executeQuery();}catch (SQLException e) {e.printStackTrace();}catch (Exception e) {e.printStackTrace();}return rs;}/*** 查询多行多列数据到成员ResultSet对象*/public ResultSet executeQuery(String sql, List<Object> pre){try{getConnection();PreparedStatement ps = con.prepareStatement(sql);if(pre != null){for(int i = 0; i < pre.size(); i++){ps.setObject(i+1, pre.get(i));}}rs = ps.executeQuery();}catch (SQLException e) {e.printStackTrace();}catch (Exception e) {e.printStackTrace();}return rs;}}


这篇关于Java使用JDBC连接mysql、sqlserver、orcle数据库的baseDao类的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/894801

相关文章

从零教你安装pytorch并在pycharm中使用

《从零教你安装pytorch并在pycharm中使用》本文详细介绍了如何使用Anaconda包管理工具创建虚拟环境,并安装CUDA加速平台和PyTorch库,同时在PyCharm中配置和使用PyTor... 目录背景介绍安装Anaconda安装CUDA安装pytorch报错解决——fbgemm.dll连接p

Java对象和JSON字符串之间的转换方法(全网最清晰)

《Java对象和JSON字符串之间的转换方法(全网最清晰)》:本文主要介绍如何在Java中使用Jackson库将对象转换为JSON字符串,并提供了一个简单的工具类示例,该工具类支持基本的转换功能,... 目录前言1. 引入 Jackson 依赖2. 创建 jsON 工具类3. 使用示例转换 Java 对象为

pycharm远程连接服务器运行pytorch的过程详解

《pycharm远程连接服务器运行pytorch的过程详解》:本文主要介绍在Linux环境下使用Anaconda管理不同版本的Python环境,并通过PyCharm远程连接服务器来运行PyTorc... 目录linux部署pytorch背景介绍Anaconda安装Linux安装pytorch虚拟环境安装cu

SpringBoot快速接入OpenAI大模型的方法(JDK8)

《SpringBoot快速接入OpenAI大模型的方法(JDK8)》本文介绍了如何使用AI4J快速接入OpenAI大模型,并展示了如何实现流式与非流式的输出,以及对函数调用的使用,AI4J支持JDK8... 目录使用AI4J快速接入OpenAI大模型介绍AI4J-github快速使用创建SpringBoot

Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)

《Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)》文章介绍了如何使用dhtmlx-gantt组件来实现公司的甘特图需求,并提供了一个简单的Vue组件示例,文章还分享了一... 目录一、首先 npm 安装插件二、创建一个vue组件三、业务页面内 引用自定义组件:四、dhtmlx

使用Python创建一个能够筛选文件的PDF合并工具

《使用Python创建一个能够筛选文件的PDF合并工具》这篇文章主要为大家详细介绍了如何使用Python创建一个能够筛选文件的PDF合并工具,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录背景主要功能全部代码代码解析1. 初始化 wx.Frame 窗口2. 创建工具栏3. 创建布局和界面控件4

一文详解如何在Python中使用Requests库

《一文详解如何在Python中使用Requests库》:本文主要介绍如何在Python中使用Requests库的相关资料,Requests库是Python中常用的第三方库,用于简化HTTP请求的发... 目录前言1. 安装Requests库2. 发起GET请求3. 发送带有查询参数的GET请求4. 发起PO

Java中的Cursor使用详解

《Java中的Cursor使用详解》本文介绍了Java中的Cursor接口及其在大数据集处理中的优势,包括逐行读取、分页处理、流控制、动态改变查询、并发控制和减少网络流量等,感兴趣的朋友一起看看吧... 最近看代码,有一段代码涉及到Cursor,感觉写法挺有意思的。注意是Cursor,而不是Consumer

解决java.lang.NullPointerException问题(空指针异常)

《解决java.lang.NullPointerException问题(空指针异常)》本文详细介绍了Java中的NullPointerException异常及其常见原因,包括对象引用为null、数组元... 目录Java.lang.NullPointerException(空指针异常)NullPointer

javaScript在表单提交时获取表单数据的示例代码

《javaScript在表单提交时获取表单数据的示例代码》本文介绍了五种在JavaScript中获取表单数据的方法:使用FormData对象、手动提取表单数据、使用querySelector获取单个字... 方法 1:使用 FormData 对象FormData 是一个方便的内置对象,用于获取表单中的键值