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 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 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;

}

}

jdbc basedao mysql_Java使用JDBC连接mysql、sqlserver、orcle数据库的baseDao类相关推荐

  1. Node.js 连接 MySQL 并进行数据库操作 –node.js 开发指南

    Node.js是一套用来编写高性能网络服务器的JavaScript工具包 通常在NodeJS开发中我们经常涉及到操作数据库,尤其是 MySQL ,作为应用最为广泛的开源数据库则成为我们的首选,本篇就来 ...

  2. Python连接MySQL、PostgreSQL数据库(简单便捷)

    一.安装库 Python连接MySQL.PostgreSQL数据库需要导入相关的模块,分别是"pymysql"和"psycopg2"模块,我们可以在Pychar ...

  3. jsp mysql oracle_Jsp 连接 mySQL、Oracle 数据库备忘

    Jsp 连接 mySQL.Oracle 数据库备忘 2009-12-15 16:47 Jsp 环境目前最流行的是 Tomcat5.0.Tomcat5.0 自己包含一个 Web 服务器,如果是测试,就没 ...

  4. 【Java】JDBC连接MySQL/SQLServer/Oracle三种数据库

    JDBC连接MySQL数据库 import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLExcepti ...

  5. 【Java+MySQL】使用JDBC连接MySQL 8.0数据库

    一.Java MySQL 8.0连接驱动包 下载链接:https://pan.baidu.com/s/1YFOImz0dCHtzIajSFq9xgg?pwd=boul 提取码:boul [IDEA]导 ...

  6. PHP连接MySql/SQLServer数据库

    1.配置PHP开发环境 为了方便,我安装了phpstudy,即在Apache+PHP+MySQL开发环境下进行开发,在phpStudy中可以切换PHP的版本,我选的是5.3版本. 然后我们启动Apac ...

  7. sqlserver怎么连接mysql,sqlserver连接mysql

    1.需要远程连接MYSQL的服务器上安装mysql-connector-odbc-5.1.8-winx64 (根据自己OS和mysql版本下载相应版本) 2.就可以通过sqlserver查询分析器执行 ...

  8. jmeter连接MySQL出错_MySQL数据库之jmeter连接mysql数据库报错Cannot create PoolableConnectionFactory...

    本文主要向大家介绍了MySQL数据库之jmeter连接mysql数据库报错Cannot create PoolableConnectionFactory  ,通过具体的内容向大家展现,希望对大家学习M ...

  9. mvc创建连接mysql_MVC+EF6-CodeFirst 连接MySQL并创建数据库和表_Demo

    VS2019+MVC+EF6-CodeFirst 连接MySQL 1.准备环境(通过NuGet获取) EntityFramework MySql.Data.Entity 安装后确认 2.在MVC-Mo ...

最新文章

  1. sql 按字段指定值排序
  2. 哲学家就餐 java_java模拟哲学家就餐问题
  3. Android5.1修改以太网MAC地址(SElinux)【转】
  4. 回顾游戏中的设计模式:策略模式vs抽象工厂
  5. leetcode 543. 二叉树的直径(Java版)
  6. easyui一行显示多行_easyui datagrid以及oracle中的多行合并一行
  7. linux一些好用的命令和快捷键
  8. [高效时间管理]复盘篇
  9. Android 控件 - TextView
  10. poj 1005 I Think I Need a Houseboat
  11. Javascript 给页面元素添加事件函数探讨
  12. python3第八天(面向对象)
  13. 机器学习:单变量线性回归及梯度下降
  14. Python3按编号创建文件夹并在文件夹下创建对应编号的txt文件
  15. Exchange+SP2的安装
  16. JSON与JAVA的数据转换
  17. ESP8266热点配网-Arduino代码分享
  18. 号码被标记,各平台取消方法
  19. 移动端 点击图片放大
  20. 从雀书无代码应用——浅谈零代码开发平台(上)

热门文章

  1. 30秒您学会配置TomCat环境变量,并运行无错
  2. kodi教程 linux,Kodi 设置教程 | Homepage of Zhikun Zhang
  3. ai的预览模式切换_当AI频繁切换色彩预览模式时 颜色会越变越深 求解?
  4. php测试宽带速度慢,性能测试问题排查一例——网络带宽瓶颈
  5. html 动画过度转换的用法,css(动画,过渡,转换)
  6. oracle同sql中isnull无法,SQL中的ISNULL函数使用介绍
  7. android edittext inputfilter,android – EditText和InputFilter会导致重复的文本
  8. python可以做哪些小工具_用Python写过哪些「脑洞大开」的小工具?
  9. 24.redis持久化之AOF
  10. booleanfield()和booleanfield(default=True)在数据库的表中无法插入