java连接多个mysql_java – MySql连接太多了

2023-11-18

使用您的方法,如果在调用conn.close()之前抛出任何异常,则永远不会关闭连接.您需要在try块中获取它(以及语句和结果集)并在finally块中将其关闭.无论是否抛出异常,都将始终执行finally中的任何代码.有了这个,您可以确保关闭昂贵的资源.

这是一个重写:

public int getSiteIdFromName(String name, String company) throws DataAccessException, java.sql.SQLException {

Connection conn = null;

Statement smt = null;

ResultSet rs = null;

int id = 0;

try {

conn = this.getSession().connection();

smt = conn.createStatement();

String query = "SELECT id FROM site WHERE name='" + name + "' and company_id='" + company + "'";

rs = smt.executeQuery(query);

rs.next();

id = rs.getInt("id");

} finally {

if (rs != null) try { rs.close(); } catch (SQLException logOrIgnore) {}

if (smt != null) try { smt.close(); } catch (SQLException logOrIgnore) {}

if (conn != null) try { conn.close(); } catch (SQLException logOrIgnore) {}

}

return id;

}

也就是说,此代码对SQL injection attacks敏感.使用PreparedStatement而不是Statement.

也可以看看:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java连接多个mysql_java – MySql连接太多了 的相关文章

  • C++两个类的头文件相互包含

    C 中头文件相互包含的几点问题 一 类嵌套的疑问 C 头文件重复包含实在是一个令人头痛的问题 前一段时间在做一个简单的数据结构演示程序的时候 不只一次的遇到这种问题 假设我们有两个类A和B 分别定义在各自的有文件A h和B h中 但是在A中
  • 英特尔cpu发布时间表_英特尔延长CPU发布周期:摩尔定律终结

    据外媒报道 英特尔最近在公司文档中废止了 嘀嗒 的芯片发展周期 第三代Skylake架构处理器 Kaby Lake CPU将在今年第三季度发布 彻底打破了 制程 架构 的钟摆节奏 英特尔延长CPU发布周期 图片来自新浪 英特尔表示 从下一代
  • 【华为OD统一考试B卷

    在线OJ 已购买本专栏用户 请私信博主开通账号 在线刷题 运行出现 Runtime Error 0Aborted 请忽略 华为OD统一考试A卷 B卷 新题库说明 2023年5月份 华为官方已经将的 2022 0223Q 1 2 3 4 统一
  • 根据IDEA完成的简单学生成绩管理系统

    根据IDEA完成的简单学生成绩管理系统 要求 输入选项 当选择录入成绩的时候来输入各个学生的成绩 直到输入 1 结束输入成绩 最后输出输入了几名学生的成绩 然后循环到主界面 输入其他的选项 来查询学生成绩的平均分 最高分 最低分 然后退出系
  • mysqlbinlog delete恢复成insert

    不小心把数据删掉了 首先要拿到binlog文件 执行以下命令行 usr local mysql bin mysqlbinlog base64 output decode rows start datetime 2023 05 19 09 0
  • 树莓派传感器篇

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 玩树莓派其中方向之一 控制各种传感器 先搞明白各种传感器的参数及使用方式 树莓派GPIO各个引脚的用处及含义 这里要着重说明一点的是 千万不要把3 3V以上的电压链接到树莓
  • OpenSSL中文手册之PEM库详解

    版权声明 本文根据DragonKing牛 E Mail wzhah 263 NET发布在https openssl 126 com的系列文章整理修改而成 这个网站已经不能访问了 我自己所做的工作主要是针对新的1 0 2版本进行验证 修改错别
  • 十八.欧几里得算法

    欧几里得算法 unsigned int Gcd unsigned int M unsigned int N unsigned int Rem while N gt 0 Rem M N M N N Rem return M 此算法用来计算最大
  • Vue实现动画的几种方式

    vue内置组件transition 元素出现和消失都呈现动画
  • For循环结构的使用

    一 四个要素 初始化条件 循环条件 gt 是boolean类型 循环体 迭代条件 二 for循环的结构 for 执行过程 1 2 3 4 2 3 4 2 遍历100以内的偶数 输出所有偶数和 int sum 0 记录所有偶数的和 int c
  • FTP服务器版本信息可被获取(CVE-1999-0614)(建议修改源代码或者配置文件改变缺省banner信息。)

    漏洞扫描报告 1 测试查看 默认端口21 telnet localhost 21 下图所示即为漏洞信息描述的 可获取版本号 2 修改 vsftpd conf 配置文件 etc vsftpd vsftpd conf 找到 ftpd banne
  • linux 怎样停定时任务,linux停用cron定时执行任务的方法

    linux下用cron定时执行任务的方法 名称 crontab 使用权限 所有使用者 使用方式 crontab file u user 用指定的文件替代目前的crontab crontab u user 用标准输入替代目前的crontab
  • C++泛型编程

    C 泛型编程 1 泛型编程 1 1 模板 1 2 函数模板 1 2 1 语法 1 2 2 使用函数模板方式 1 2 3 普通函数和函数模板的区别 1 2 4 普通函数与函数模板的调用规则 1 2 5 模板的局限性 1 3 类模板 1 3 1
  • findBug 错误修改指南

    FindBugs错误修改指南 1 EC UNRELATED TYPES Bug Call to equals comparing different types Pattern id EC UNRELATED TYPES type EC c
  • spark_hadoop集群搭建自动化脚本

    bin bash 脚本使用说明 1 使用脚本前需要弄好服务器的基础环境 2 在hadoop的每个节点需要手动创建如下目录 data hdfs tmp 3 修改下面的配置参数 4 脚本执行完备后需要收到格式化namenode
  • APP移动端自动化测试(八)总览

    官网地址 https github com appium appium blob master docs en writing running appium server args md 项目中你是怎么结合自动化的 apk for andr
  • JavaScript 获取时间日期方法

    Date对象包含日期和时间的相关信息 Date对象没有任何属性 它只具有很多用于设置和获取日期时间的方法 方法 说明 getDate 返回Date对象中月份的天数 gateDay 返回Date对象中的星期几 getHours 返回Date对

随机推荐

  • 机器学习算法案例:泰坦尼克号乘客生存预测

    学习目标 通过案例进一步掌握决策树算法api的具体使用 1 案例背景 泰坦尼克号沉没是历史上最臭名昭着的沉船之一 1912年4月15日 在她的处女航中 泰坦尼克号在与冰山相撞后沉没 在2224名乘客和机组人员中造成1502人死亡 这场耸人听
  • ubuntu编译安装mmcv 1.6.2和mmsegmentation 0.28.0

    环境 ubuntu16 04 cuda10 1 python 3 8 pytorch 1 6 0 cuda10 1 对应的torch版本 lt 1 8 但是1 8和1 7都试了 mmcv没有编译成功 只有1 6成功了 1 编译MMCV 1
  • 行为型模式-策略模式

    package per mjn pattern strategy 抽象策略类 public interface Strategy void show package per mjn pattern strategy 具体策略类 用来封装算法
  • warning: function declared implicitly错误原因

    http blog sina com cn s blog 629f56a70100irbn html line 10 warning function declared implicitly 这是由于没有声明函数原型造成的 在a c中 vo
  • Vue插件

    目录 vue项目目录结构 es6导入导出语法 Vue项目开发规范单页面组件写法 vue项目集成axios vue项目前后端打通 前后端交互之登录功能 props配置项 父组件通过自定义属性与子组件通信 混入 插件 scoped样式 loca
  • c语言socket如何传输图片,socket文件传输功能的实现

    这节我们来完成 socket 文件传输程序 这是一个非常实用的例子 要实现的功能为 client 从 server 下载一个文件并保存到本地 编写这个程序需要注意两个问题 1 文件大小不确定 有可能比缓冲区大很多 调用一次 write se
  • 如何理解面向过程和面向对象?

    一句话理解面向对象 有人说 如果上帝是程序员 他怎么创造世界上的所有动物 理解这个问题就理解了面向对像 面向过程和面向对象区别 面向过程的思路 什么事都自己做 分析解决问题所需的步骤 用函数把这些步骤依次实现 面向对象的思路 什么事都指挥对
  • 可连接点对象及示例(二)

    转载请标明是引用于 http blog csdn net chenyujing1234 例子代码 包括客户端与服务端 http www rayfile com zh cn files de82908f 7309 11e1 9db1 0015
  • 域名怎么解析到服务器上

    今天无事说一说如何把自己的域名解析绑定到自己的服务器上 让访客们可以通过你的域名来访问你的网站 域名解析定义 域名解析是把域名指向网站空间IP 让人们通过注册的域名可以方便地访问到网站的一种服务 IP地址是网络上标识站点的数字地址 为了方便
  • pytorch 中 多头注意力机制 MultiHeadAttention的代码实现及应用

    本文将对 Scaled Dot Product Attention Multi head attention Self attention Transformer等概念做一个简要介绍和区分 最后对通用的 Multi head attenti
  • klocwork 2020.3安装使用过程

    klocwork 2020 3 1 安装过程略过 可查看2019的安装过程 2 web分析 存在漏报的问题 可能是规则选择不全 3 desktop分析 4 嵌入式环境插件分析 e mail lu1024lu foxmail com
  • 软件著作权申请注意事项——常见问题[详细版,不断补充中]

    近期在申请几个软著 查询了大量资料 打了很多电话 经过几次 亲身尝试后 总结出了以下要点问题 基本涵盖了目前网上搜不到的一些注意事项 如有问题欢迎在评论中一起讨论 2020年8月上线了新系统 本说明进行了相应调整 请先阅读 0 新系统计算机
  • 开源库jemalloc简介

    jemalloc是通用的malloc 3 实现 它强调避免碎片和可扩展的并发支持 它的源码位于https github com jemalloc jemalloc 最新稳定版本为5 2 1 glibc的内存分配算法是基于dlmalloc实现
  • Two Arithmetic Progressions

    Two Arithmetic Progressions 题目链接 题意 思路 AC代码1 include
  • .NET Core + K8S 玩转容器编排

    Production Grade Container Orchestration Automated container deployment scaling and management 生产级别的容器编排系统 自动化的容器部署 扩展和管
  • RTMP协议与RTSP协议比较

    考虑做一个手机直播系统 首先需要指定一个合理的技术方案 由于自己以前不是搞多媒体这块 对流媒体开发不熟悉 自己的理解思维总习惯用java web开发的惯性走 先指定一个大体的框架 不管对还是错 先考虑其技术可行性 框架的指定 首先取决于自己
  • 代码走查——项目走向成功的锦囊之一

    说起代码走查 相信每个人都不陌生 但为什么要执行代码走查 什么时候来执行代码走查 如何有效执行代码走查 很多人的看法和见解都不一样 一般的看法 认为代码走查是一种非正式的代码评审技术 它通常在编码完成之后由代码的作者向一组同事来讲解他自己编
  • mysql5.7防火墙_mysql 5.7.13 winx64安装配置方法图文教程(win10)

    本文实例为大家分享了mysql 5 7 13 winx64安装配置方法图文教程 供大家参考 具体内容如下 下载 安装 1 解压下载好的mysql 5 7 13 winx64 zip到你需要安转的目录 eg D mysql 2 配置解压目录下
  • openwrt用git https错误:fatal unable to find remote helper for ‘https‘

    opkg update opkg remove git opkg install git http opkg install ca bundle
  • java连接多个mysql_java – MySql连接太多了

    使用您的方法 如果在调用conn close 之前抛出任何异常 则永远不会关闭连接 您需要在try块中获取它 以及语句和结果集 并在finally块中将其关闭 无论是否抛出异常 都将始终执行finally中的任何代码 有了这个 您可以确保关