- 博客(58)
- 资源 (1)
- 收藏
- 关注
原创 实战:基于 XXL-JOB + 策略模式 + Nacos 配置化的 CSV 导出任务系统设计
并发处理:乐观锁防多节点抢占,无需分布式锁;内存控制:游标分页 + 流式写入,数据不堆积;磁盘清理finally强制删除临时文件,先关流再删除;状态原子性:"扫描 → 置为处理中"由一条带条件的 UPDATE 保证;空数据处理:主动标记失败并写明原因,避免生成无意义的空文件;SQL 注入${}拼接必须经过关键词校验;配置一致性与长度不一致时快速失败;编码问题:CSV 写 UTF-8 BOM 头,Excel 中文不乱码。“简单的交给配置,复杂的交给代码,并发的交给乐观锁,性能的交给游标分页。
2026-09-17 09:32:03
148
原创 Spring Boot + MyBatis-Plus 优雅实现 MySQL & Doris 双数据源动态切换实战
验证项验证方法期望结果编译检查数据源初始化查看启动日志看到mysql和doris两个数据源的inited成功日志Doris 路由调用老业务分析接口SQL 日志显示连接的是 Doris 的 Host 和 PortMySQL 路由调用新业务写入接口SQL 日志显示连接的是 MySQL 的 Host 和 Port事务验证故意在 MySQL 事务中抛出异常数据成功回滚,事务管理器工作正常结语通过引入,我们以极低的代码侵入性完成了 OLTP 与 OLAP 数据源的物理隔离。
2026-09-08 12:30:00
385
原创 Spring Boot 实战:基于自定义注解 + AOP 实现 Kafka 消息无侵入异步上送
在日常的微服务开发中,我们经常需要将核心接口的调用数据(如入参、返参、耗时等)异步上报到 Kafka,供下游进行数据同步、审计或数据计算。如果在每个业务方法里手动编写 Kafka 发送逻辑,不仅代码冗余度高,而且严重侵入业务逻辑。本文将分享一种基于自定义注解 + AOP 拦截的优雅方案,实现接口调用数据的无侵入式、异步、防重上送,并支持线程池隔离与动态配置。通过自定义注解标记需要上送 Kafka 的方法,实现业务代码零侵入。/*** Kafka 推送注解* <p>
2026-09-07 09:00:00
463
原创 硬盘清理,由于C盘存储快满了,找了一款分析软件,很快定位到哪个文件夹过大,结果是微信缓存聊天记录太大了
硬盘清理由于C盘存储快满了,找了一款分析软件,很快定位到哪个文件夹过大,结果是微信缓存聊天记录太大了。
2025-10-14 23:42:47
324
原创 Spring Boot整合Thymeleaf
Thymeleaf能够处理HTML,XML,JavaScript,CSS甚至是纯文本.是一个模板引擎,可以为模板做数据渲染,添加后记得更新maven编写Controller创建页面Thymeleaf 语法讲解命名空间:xmlns:th=“http://www.thymeleaf.org”标签中的th标记,会提示如图展示,Cannot find declaration to go to,原因是没有在页面中添加th命令的空间的定义.在html标签中增加命名空间,会去掉异常提示并增加代码提示
2022-06-19 23:55:07
438
原创 Spring Boot文件上传
编写Controller在Spring Boot中默认文件大小是1MB,需要在配置文件中修改配置大小Spring Boot整合视图层技术1Spring Boot整合JSP修改pom文件添加JSP引擎,JSP在tomcat中运行,在tomcat中添加JSP引擎,完成对JSP的处理,springboot中内嵌tomcat,springboot中的tomcat无法处理JSP,所以如果使用JSP需要在配置文件添加JSP引擎创建webapp目录将webapp目录标记创建JSP文件......
2022-06-13 00:06:03
312
原创 Spring Boot访问静态资源
Spring Boot 它只有Src目录.在src/main/resources下面有两个文件夹,static和templates.SpringBoot默认在static目录中存放静态页面,而templates中放动态页面.Spring Boot通过classpath/static目录访问静态资源,注意存放静态资源的目录名称必须是static.在 Spring Boot中不推荐使用jsp作为视图层技术,而是默认使用Thymeleaf来做动态页面,Templates目录这是存放Thymeleaf的页面....
2022-06-11 22:26:34
336
原创 Spring Boot在Controller中的常用注解
@RestContr相当于@Controller+@ResponseBody注解如果使用@RestController注解Controller中的方法无法返回页面,相当于在方法上面自动加了@ResponseBody注解,所以没办法跳转并传输数据到另一个页面,所以InternalResourceViewResolver也不起作用,返回的内容就是Return中的内容@GetMapping注解是@RequestMapping(method=RequestMethod.GET)的缩写@PostMapping注解是
2022-06-11 18:51:38
749
原创 2021-05-26SpringBoot项目结构
1.pom文件结构1.1继承<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.5.0</version> <relativePath/> <!-- lookup
2021-05-27 00:02:34
360
原创 2021-05-25创建springBoot项目的三种方式
官网创建项目1.1访问https://spring.io/选择最下方Quickstart。点击spring initializr1.2配置springboot的初始设置springboot无需部署war,pagcking直接选择jar1.3使用Dependencies配置初始化项目依赖启动器1.4生成项目点击GENETATE会自动下载项目压缩包。1.5下载完成后解压压缩包,使用idea打开使用import project导入项目导入类型是maven项目jdk版本选择1.8.
2021-05-26 00:13:59
425
原创 使用rpm 安装wget
步骤:下载wget的rpm包:http://mirrors.163.com/centos/7/os/x86_64/Packages/使用浏览器搜索功能查找关键字 ,这个网站搜索wget运行: rpm -ivh wget-1.14-15.el7_4.1.x86_64.rpm
2021-01-17 17:34:09
8632
1
原创 docker简单安装及命令行
docke的安装使用CentOs7版本使用下面命令行安装,需要保证联网环境.yum install docker安装完成之后查看docker版本docker -v启动docker服务systemctl start docker.service停止docker服务systemctl stop docker.service...
2020-11-21 20:30:28
1077
原创 腾讯服务器部署使用记录
购买腾讯服务器使用记录关于服务器ip及连接服务器方式 点击控制台, 点击实例,可查看购买的服务器信息 最关键的是公网ip及配置服务器密码 使用 secureCRT等ssh客户端软件连接 向服务器中安装基础服务 安装jdk使用https://blog.youkuaiyun.com/qq_42670220/article/details/90753244 ...
2020-11-17 22:24:54
280
原创 Activiti框架学习必看的知识点
Activiti介绍https://segmentfault.com/a/1190000013839729#item-2-3Activiti表中字段 介绍https://blog.youkuaiyun.com/hj7jay/article/details/51302829
2020-04-10 09:25:24
284
原创 清除mysql日志问题: mysqld.log
mysql日志问题:df -h //查看空间使用情况du -sh /* //查看目录占用空间想清理哪个文件夹就进入哪个文件夹例如:cd /usr //进入该文件夹du -h --max-depth=1清理log文件例如:echo ''> mysqld.log清理log文件不可以使用rm 指令...
2020-03-16 11:06:22
5404
原创 Mysql数据库(大小写敏感)区分大小写的问题总结
Linux 系统默认情况下MySQL数据库是区分大小写的;因此要将mysql设置成不区分大小写,在/etc/my.cnf 配置后面加上一行,在修改前使用数据库查询命令查看本机的大小写敏感状态.判断好情况后再修改数据库大小写敏感配置查询语句mysql> show variables like 'lower%';+------------------------+-------...
2019-12-24 00:45:18
5897
原创 MongoDB查询集合中全部列名
mr = db.runCommand({ "mapreduce": "集合名随意替换", "map": function() { for (var key in this) { emit(key, null); } }, "reduce": function(key, stuff) { ret...
2019-12-17 11:09:24
6600
2
原创 jdk各种版本下载地址
访问Oracel中Java SE页面https://www.oracle.com/technetwork/java/javase/archive-139210.html选中大版本号选中小版本号,及操作系统类型,点击红色箭头指向按钮,然后点击连接下载,目前好像需要Oracel账号,随便注册就行...
2019-12-13 11:12:26
1262
原创 java中基本数据类型和包装数据类型装箱和拆箱及其作用
首先简单介绍一下装箱和拆箱 装箱:将基本数据类型转换为包装数据类型. 拆箱:将包装数据类型转换为基本数据类型.为什么要使用包装数据类型呢?因为Java是一种面向对象语言,很多地方都需要使用对象而不是基本数据类型。比如,在集合类中,我们是无法将int 、double等类型放进去的。因为集合的容器要求元素是Object类型。为了让基本类型也具有对象的特征,就出现了...
2019-12-05 23:41:10
603
转载 findBugs使用
作者:芋道源码链接:https://zhuanlan.zhihu.com/p/87056110来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。1. FindBugs-IDEA作用:检测代码中可能的bug及不规范的位置,写完代码后检测下 避免低级bug。静态分析工具承诺无需开发人员费劲就能找出代码中已有的缺陷。当然,如果有多年的编写经验,就会知...
2019-10-26 17:21:14
2755
原创 java解析前台传递token
前台路径sessionStorage.getItem('Admin-Token');后台接收路径 @RequestMapping(value = "/credit/report/{creditCode}/{enterpriseName}/{reportType}/{reportName}/{token}") public void getCreditReportById(@Pa...
2019-10-25 14:03:46
1718
原创 XSSFWorkbook,模板
// HSSFWorkbook 就代表一个 Excel 文件 // 创建其对象,就打开这个 Excel 文件 XSSFWorkbook workbook = new XSSFWorkbook(excelFileInputStream); // 输入流使用后,及时关闭!这是文件流操作中极好的一个习惯! ...
2019-09-24 18:09:32
3141
原创 使用git 提交本地文件夹及文件
新建文件 push到 git仓库17.1、添加add.txt文件17.2、为保障主分支安全,建议在本地创建个人分支:git checkout -b 分支名称(创建分支并切换至改分支)成功后查看所有分支,并确定当前在哪个分支之下,被选中的分支为 * 开头的绿色17.3、查看当前项目所有文件状态: git status(下图说明我们添加了...
2019-09-02 10:09:48
17532
原创 查询多个表中记录排列展示
SELECTa.a1 ,b.b1from(SELECT count(*) a1 FROM DEP_L_000501 WHERE create_date >= TRUNC(SYSDATE -300) ) a,(SELECT count(*) b1 FROM dep_l_000701 WHERE create_date >= TRUNC(SYSDATE -100...
2019-06-19 12:14:39
254
原创 oracle数据库创建表空间,用户及赋权限及常用sql语句
创建表空间create tablespace tablespace_gsscjdjloggingdatafile 'D:\app\Administrator\oradata\gsscjdj\tablespace_gsscjdj.dbf'size 2Gautoextend onnext 2G maxsize 10Gextent management local;创建用户...
2019-06-05 15:18:41
349
原创 kettle修改spoon的默认编码集防止编码问题
在spoon.bat文件中添加"-Dfile.encoding=UTF-8"防止出现从数据库查询数据时出现编码问题
2019-06-04 15:27:01
4393
1
原创 IDEA 配置Tomat Deployment 没有Artifact选择
其中一种情况是maven projects中还没有加载完配置,可以点击刷新,然后再去看deployment中有没没有刷新出artifact中可能还会有其他情况,本文不再概述.ment
2019-05-30 09:56:51
665
原创 Kettle下载地址
https://sourceforge.net/projects/pentaho/files/选择 Data Integration,然后跳转到版本页面选择版本选择自己项目匹配的版本,直接下载解压,不需要安装.连接数据需要将数据库驱动jar包引入lib目录下.kettle是java项目需安装java环境,配置jdk,不然项目报错....
2019-04-17 13:32:35
4350
原创 Zookeeper的安装步骤(linux环境)
Zookeeper的安装安装环境:Linux:centos6.4Jdk:1.7以上版本Zookeeper是java开发的可以运行在windows、linux环境。需要先安装jdk。安装步骤:第一步:安装jdk第二步:把zookeeper的压缩包上传到linux系统。第三步:解压缩压缩包tar -zxvf zookeeper-3.4.6.tar.gz第四步...
2019-03-18 15:36:44
223
原创 短信发送
前台页面操作有两个, 1.点击发送按钮,时间倒计时 2.按钮置灰,定时结束后恢复点击状态 var clock = ''; var nums = 60; var btn; function sendCode(thisBtn) { btn = thisBtn; btn.disabled = true; //...
2019-03-14 16:39:58
309
原创 mybatis框架xml文件,函数调用语句语法规则
xml文件: <!--执行存储过程--> <select id="getIdnexvaluesByMainId" parameterType="string" resultType="String" <!-- statementType 声明指向的是什么类型,其中CALLABLE是执行存储过程和函数的--> ...
2019-03-12 11:37:36
1320
转载 mybatis框架foreach动态生成列名使用${value}取值
foreach标签中遍历的内容,如果是用在列名的获取,要用${value}获取值,也就是直接去拼接,而不是预编译,否则会报错。用在条件遍历是预编译会更好一些(防止SQL注入),即#{value}。...
2019-03-06 16:28:45
1543
原创 求模取余测试数据结果
System.out.println(total / 5);//4 System.out.println(22% 5);//2 System.out.println(20/5);//4 System.out.println(20%5);//0 System.out.println(5/10);//0...
2019-02-19 16:40:05
271
原创 poi 导出excel(简单demo)
/** * 导出项目 */ @GetMapping(value = "/list/{name}/{txt}", consumes = "application/json") public BaseResponse download(@PathVariable String name, @PathVariable String txt) { P...
2019-02-19 10:11:43
416
原创 a标签嵌入动态链接和值[字符串拼接方式]
<tbody class="selectCompany"> <tr v-for="(l,index) in page"> <td>{{l.QYMC}}</td> ...
2019-02-14 10:06:35
4328
原创 数据库面试题记录case when
SELECT DATA , sum( CASE WHEN result = '胜' THEN 1 ELSE 0 END ) 胜, sum( CASE WHEN result = '负' THEN 1 ELSE 0 END ) 负FROM 表名GROUP BYDATA
2018-11-21 15:42:58
340
原创 tomcat修改端口号
通过修改server.xml里的配置信息来修改端口号,修改port值内容,修改原则,尽量往大的端口号修改,修改完成后要重启tomcat
2018-11-20 16:29:32
358
PDFbox-app-2.0.9.jar;PDFbox.jar包
2018-06-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅