java整合jdbc数据库连接工具(项目亲测)
现在jdbc很少用了,但是涉及到多数据源的时候,还是可以用的到的,这里整理了一份数据库连接工具类,话不多说,直接上代码
创建一个MysqlOperator 的java文件,下方的代码可以直接复制过去
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;import java.sql.*;
import java.util.List;/*** author :byH* date :Created 2020/12/17 10:11* description:jdbc数据库连接工具*/
@Slf4j
public class MysqlOperator {final static String driver = "com.mysql.jdbc.Driver";//mysql// 加载驱动程序static {try {Class.forName(driver);} catch (ClassNotFoundException e) {e.printStackTrace();}}/*** 执行查询sql语句,获取返回值* @param conn 创建连接* @param sql sql语句* @param paramList 查询的字段* @return result 返回值*/public static JSONArray selectSql(Connection conn , String sql, List<String> paramList) {//创建必要参数JSONArray jsonArray = new JSONArray();log.info("sql:" + sql);// 创建连接try {if (conn == null) {log.info("创建连接失败");return null;}// 创建Statement对象Statement stmt = conn.createStatement();// 执行sql查询ResultSet resultSet = stmt.executeQuery(sql);while (resultSet.next()) {JSONObject jsonObject = new JSONObject();for (String param : paramList) {jsonObject.put(param, resultSet.getString(param));}jsonArray.add(jsonObject);}return jsonArray;} catch (SQLException throwables) {throwables.printStackTrace();return null;}}/*** 执行增删改sql语句,获取返回值** @param conn 创建连接* @param sql sql语句* @return result 返回值*/public static int updateSql(Connection conn, String sql) {log.info("sql:" + sql);try {if (conn == null) {log.info("创建连接失败");return -1;}// 创建Statement对象Statement stmt = conn.createStatement();// 执行sql查询return stmt.executeUpdate(sql);} catch (SQLException throwables) {throwables.printStackTrace();return -1;}}/*** 创建连接** @param url:jdbc地址* @param user 用户名* @param password 密码* @return result 返回值*/public static Connection getConn(String url, String user, String password) throws SQLException {return DriverManager.getConnection(url, user, password);}/*** 关闭连接** @param conn conn*/public static void closeConn(Connection conn) throws SQLException {if (conn != null && !conn.isClosed()) {conn.close();}}
}
调用:
创建连接 MysqlOperator.getConn
查询 MysqlOperator.selectSql
增删改 MysqlOperator.updateSql
关闭连接 MysqlOperator.closeConn
java整合jdbc数据库连接工具(项目亲测)相关推荐
- java调用阿里云上传和下载(项目亲测)
pom文件导入依赖就不贴了,直接到官网贴最新的就行:https://help.aliyun.com/document_detail/32009.html?spm=a2c4g.11186623.6.80 ...
- 阿里云 部署SpringBoot和Vue项目 亲测可用(第一次部署经验贴)
阿里云 部署SpringBoot和Vue项目 亲测可用!第一次部署经验贴! 前言:与伙伴一起写了一个项目,但是由于老师要我们部署到服务器上,而我从未有部署过,查看了csdn很多博客,试了好多篇,才成功 ...
- SpringBoot整合JDBC数据库操作第七弹-自定义RowMapper
SpringBoot整合JDBC数据库操作第七弹-自定义RowMapper 上篇文章我们讲到了怎么对数据的查询操作,每次查询数据都会在返回中构建一个匿名类去封装返回结果,这样的话导致我们有大量的冗余代 ...
- SpringBoot整合JDBC数据库操作第二弹-配置基本数据库连接源
SpringBoot整合JDBC数据库操作第二弹-配置基本数据库连接源 上篇文章我们讲到了如何配置整合JDBC的基础环境,这篇文章我们讲解一下如何去配置服务的DataSource数据库数据源,方便其对 ...
- 一步一步教你如何在GitHub上上传自己的项目,亲测有效无bug,
直接在github 仓库中 add file 添加自己的文件 ###################################### 本地 git 仓库的建立 修改 删除 命令 git conf ...
- tomcat部署多个项目,tomcat部署java,tomcat部署前端(亲测可用)
1. 介绍 粗鄙的介绍:tomcat,很好用,可以跑java服务,也可以跑前端服务.但是都是要打包后的. tomcat 在linux和windows上都可以运行. 2. 下载 官网地址 :https: ...
- idea中项目编译提示Error(1,1) java:非法字符的解决办法(亲测有效)
从eclipse中导入项目运行是提示非法字符 查找答案得出原因是编码问题 设置的idea默认使用的是UTF-8编码但是我之前eclispe中项目编码也是UTF-8 整个项目中只有以上几处提示Error ...
- 小博老师解析Java核心技术 ——JDBC数据库操作类封装
2019独角兽企业重金招聘Python工程师标准>>> [引言] 我们在学习Java编程时,连接数据库技术(JDBC)是一项必备技能,我们经常需要读取或操作持久性存储的结构化数据.那 ...
- Java IOUtils.copy方法代码示例(亲测)
本文整理汇总了Java中org.apache.commons.io.IOUtils.copy方法的典型用法代码示例.如果您正苦于以下问题:Java IOUtils.copy方法的具体用法?Java I ...
- Java 微信native扫码支付 亲测有用
最近在网上总结了spring cloud 微信扫码支付的流程, 本人是刚入行的小白,有不对的地方请大家指出 也欢迎大家来多多交流 我的商户APPID和秘钥的一些配置信息,是公司的 这些需要微信的商户认 ...
最新文章
- python协程详解_对Python协程之异步同步的区别详解
- AOP开发——在不修改源代码的前提下,对类里面的方法进行增强 : 前置 后置 环绕 异常||如何得到目标方法的参数和返回值
- 简单了解Vue的异步请求,axios-0.18.0.js插件实现异步
- 【Python】pdf2image模块+poppler将PDF转换为图片
- “码农”被黑得最惨的一次,深夜下班被误认为小偷
- 重拾MVC——第二天:Vue学习与即时密码格式验证
- 北斗导航 | 灰常详细的RAIM 基本理论(公式推导)
- 商旅业务知识-航信(ETERM)系统
- QTTabBar 安装使用记录
- Resin服务器配置指南
- 小米8屏幕指纹版(UD) 稳定版miui11刷magisk、太极参考
- SLA是什么意思 ?
- MySQL数据库面试题(超详细)
- kotlin入门,Android快速转战Kotlin教程,重难点整理
- Java后端开发工程师是否该转大数据开发?
- IBM在欧洲建首台量子计算机
- 5G基站辐射致癌?一个源自19年前的某权威报告引发的谣言
- 什么是cherry-pick
- HTML在指定位置画一个矩形,CAD如何在指定位置绘制矩形?
- HOG+SVM实现交通路标识别
热门文章
- matlab仿真建模,matlab系统建模仿真.ppt
- MacOS配置Sql Server环境
- 杰控连接mysql_杰控FameView软件首秦ERP系统L2级中的应用
- 计算机组成原理 确定片选逻辑,唐朔飞 计算机组成原理习题答案.ppt
- 擦地机器人修理_第一次修扫地机器人
- 台达服务器AB和B2系列区别,台达A2与B2伺服的区别
- L298N 电机驱动板 - 详细介绍
- 安装oh-my-zsh+、插件zsh-syntax-highlighting、zsh-autosuggestions、zsh-autosuggestions、autojump修改配置
- java教学视频_孔浩老师_孔浩老师JAVA WebService教程
- vss2005 Internet配置