当前位置: 首页 > news >正文

日志中的SQL语句直接转为可执行的SQL

你上班的时候有遇到过这种情况吗?
在这里插入图片描述

我想执行下这个日志中的SQL,需要把参数一个一个复制粘贴到?中,烦死了
于是,我写个小方法,复制粘贴下就能得到可执行的SQL

	public static void main(String[] args) {String str = "2025-09-18 17:12:24.087 DEBUG 56008 --- [ XNIO-1 task-11] o.s.MMU.mapper.Tbmmu112Mapper.insert     : ==>  Preparing: INSERT INTO TBMMU112 ( TBMMU112_ID, tbmmu109_id, company_id, company_name, dw_id, source_app_id, inv_logic_id, inv_logic_name, inv_physic_id, inv_physic_name, inv_bin_id, inv_bin_name, item_id, item_name, inv_unit, withdraw_qty, ori_qty, now_qty, purpose_id, inventory_type, sale_price, data_stus, create_user, create_dept, create_time, update_user, update_time, cre_user, upd_user, type_spec, item_more_desc, storage_date ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )\n" +"2025-09-18 17:12:24.127 DEBUG 56008 --- [ XNIO-1 task-11] o.s.MMU.mapper.Tbmmu112Mapper.insert     : ==> Parameters: 2b839f07287c41fdaa39585426b5ab8f(String), 1db56d0098ca470a8b47c5a1210d0705(String), 0640(String), NATSTEEL(String), CK0640250900291(String), MMU112(String), M5(String), M5 Store,22 Tanjong Kling road(Gate 4)(String), SC05(String), Spares & Conumables(String), A3-SC05-AF00Z(String), AF00Z(String), B17-09-01-0012(String), HARDOX 450 BIN 6M(L) X 2M(H) X 2.4M (W)(String), UNI(String), 2.0(BigDecimal), 52(BigDecimal), 50.00(BigDecimal), 52 盘亏(String), N(String), 900(BigDecimal), N(String), 37222(Long), 10000011(Long), 2025-09-18(Date), 37222(Long), 2025-09-18(Date), zt37222_孙德猛(String), zt37222_孙德猛(String), HARDOX 450 BIN 6M(L) X 2M(H) X 2.4M (W)(String), TO SUPPLY OPEN TOP CONTAINER (OTC) C/W: 1) BASE PLATE: 6MM HARDOX 450 PLATE (SINGLE PIECE) 2) SIDE PLATE: 6MM HARDOX 450 PLATE (SINGLE PIECE) 3) REAR SWING DOOR WITH 04 HEAVY DUTY DOOR HINGES 4) REAR DOOR WITH MULTIPLE HOOK MECHANICAL FUNCTIONAL LOCKING SYSTEM 5) 02 HEAVY DUTY REAR ROLLER 6) HEAVY DUTY FRONT BOW (STANDARD HEIGHT 1570MM) 7) CHOICE OF EXTERNAL COLOUR (SINGLE TONE ONLY) 8) SAC INSPECTION CERTIFICATE (1 YEAR ONLY) 9)  LENGTH: 6METER (EXTERNAL) 10) HEIGHT2 METER (EXTERNAL) 11) WIDTH:24 METER (EXTERNAL)(String), 2025-09-09 00:00:00.0(Timestamp)";String[] split = str.split("==>");SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");String today = sdf.format(new Date());String sql =split[1].trim().split(today)[0].trim().split(":")[1];String[] params = split[2].split("arameters:")[1].trim().split("\\),");for (int i = 0; i < params.length; i++) {String curRep=params[i].trim();if(curRep.contains("String")){curRep="'"+curRep.split("\\(String")[0].trim()+"'";}if(curRep.contains("Long")){curRep="'"+curRep.split("\\(Long")[0].trim()+"'";}if(curRep.contains("Date")){curRep="TO_DATE\\('"+curRep.split("\\(Date")[0].trim()+"\\', \\'YYYY-MM-DD\\'\\)";}if(curRep.contains("BigDecimal")){curRep="'"+curRep.split("\\(BigDecimal")[0].trim()+"'";}if(curRep.contains("Timestamp")){curRep="TO_TIMESTAMP\\('"+curRep.split("\\(Timestamp")[0].trim()+"\\', \\'SYYYY-MM-DD HH24:MI:SS.FF\\'\\)";}sql = sql.replaceFirst("\\?", curRep);}System.out.println(sql);}

在这里插入图片描述
到数据库中试下能不能用
在这里插入图片描述
看到> Affected rows: 1 就是执行成功了,
下课

http://www.dtcms.com/a/389343.html

相关文章:

  • Java 大视界 -- Java 大数据在智慧文旅旅游景区游客情感分析与服务改进中的应用实践
  • Nginx-RTMP-Module开源项目全解析:从基础部署到企业级应用实践
  • 新代系统如何输入期限密码
  • 【C++】STL--stack(栈)queue(队列)使用及其重要接口模拟实现
  • 计算机组成原理:奔腾系列机的虚存组织
  • 架构模式的双雄会:Reactor与Proactor的高并发哲学
  • 【C++】STL详解(八)—stack和queue的模拟实现
  • 【LeetCode Hot100----08-二叉树篇中(06-10),包含多种方法,详细思路与代码,让你一篇文章看懂所有!】
  • ARM(12) - ADC 检测光照强度
  • 网格生成引擎:设计原则、关键组件
  • 【开发AI】Spring AI Alibaba:集成AI应用的Java项目实战
  • Spark专题-第二部分:Spark SQL 入门(2)-算子介绍-Scan/Filter/Project
  • Selenium 自动化爬虫:处理动态电商页面
  • 无需Selenium:巧用Python捕获携程机票Ajax请求并解析JSON数据
  • Python版Kafka基础班 - 学习笔记
  • IDEA 查看 Maven 依赖树与解决 Jar 包冲突
  • 【LVS入门宝典】LVS与Nginx、HAProxy的对比:四层(LVS) vs 七层(Nginx)的适用场景
  • 系统安全配置与加固
  • 【AI-Agent】AI游戏库
  • 病毒库更新原理
  • 服务器内存爆炸,日志无报错,通过分析 Dump 文件查找问题原因
  • 【Redis学习】服务端高并发分布式结构演变之路
  • 【JavaScript 性能优化实战】第三篇:内存泄漏排查与根治方案
  • 关于JavaScript性能优化实战的技术
  • 分布式流处理与消息传递——Paxos Stream 算法详解
  • ​​瑞芯微RK3576多路AHD摄像头实测演示,触觉智能配套AHD硬件方案
  • mysql删除数据库命令,如何安全彻底地删除MySQL数据库?
  • vscode中创建项目、虚拟环境,安装项目并添加到工作空间完整步骤来了
  • 如何快速传输TB级数据?公司大数据传输的终极解决方案
  • Linux的进程调度及内核实现