自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 问答 (1)
  • 收藏
  • 关注

原创 Java 工具类调用Server 酱推送消息

用于调用API,推送消息到微信。

2025-04-01 13:14:20 157

原创 Java Map 的 `computeIfAbsent` 和 `getOrDefault` 方法详解

在 Java 开发中,Map接口提供了许多实用的方法来简化代码,提高效率。和,并通过示例说明它们的使用场景和功能。

2025-03-21 13:18:58 285

原创 GIT解决代码冲突

【代码】GIT解决代码冲突。

2025-03-20 09:29:48 105

原创 @RequiredArgsConstructor注解使用

如果使用注解,那么 Spring 通过构造函数注入时会自动注入,你不需要显式使用@Autowired注解。@Autowired是 Spring 用于注入依赖的注解,通常用于字段或构造函数上,如果你使用构造函数注入,@Autowired并不一定需要显式标注,Spring 会自动进行注入。如果你的没有被正确注入,确保 Spring 容器中存在的实现,并且MyService类被标记为@Component或其他 Spring 注解,使其被 Spring 扫描并管理。

2025-03-13 16:53:51 414

原创 CompletableFuture.runAsync() 处理异常

如果你想在中处理异常,可以使用或handle()方法来捕获异常并打印信息。

2025-03-13 16:48:40 177

原创 【MySQL 中 `TINYINT` 类型与布尔值的关系】

TINYINT是一个占用 1 字节的整数类型,取值范围为:有符号:-128 到 127无符号:0 到 255BOOLEAN类型在 MySQL 中实际是TINYINT(1)的别名,即使用TINYINT来表示布尔值。在 MySQL 中,BOOLEAN和BOOL是TINYINT(1)的别名。使用TINYINT(1)来存储布尔值时,0表示false1表示true。你可以将这个内容作为文档发布,帮助更好地理解 MySQL 中TINYINT与布尔值之间的关系。

2025-03-13 16:46:57 245

原创 面试题总结

● 幻读:一个事务按照条件查询数据时,没有对应的数据行,但是在插入数据时,又发现这行数据已经存在,会幻读 比如第一次查询 没有数据 同时另一个事务提交了数据 再次查询有数据 就幻读。● 在索引列上进行了范围查询 > < 右边的列是不走索引的 但是前面的列是走索引的。● 不可重复读:一个事务先后读取同一条记录,但两次读取的数据不同,称之为不可重复读。● 模块查询以%开头会导致失效 在结尾可以走索引。● 脏读: 一个事务读取到了另外一个还没有提交的事务。解决并发事务问题的办法就是事务隔离。

2025-02-14 11:54:17 274

原创 Linux 安装 JDK17

安装jdk17

2024-10-18 09:02:40 1330

原创 接口严格做幂等操作 推荐使用分布式锁

确实,这意味着在编码时需要额外的考虑和实现,但长远来看,这是构建健壮系统的重要一步。对于那些应当具备幂等性的操作,如保存、更新、审批等操作,确保代码中实现幂等性检查是一个最佳实践。更新时,SQL语句中包含版本号的条件,如果数据已被其他事务修改(版本号不匹配),则更新失败。:通过消息队列处理业务逻辑,确保消息至少被消费一次,同时在消费者端实现幂等性逻辑,比如记录已处理消息ID,重复消息到来时忽略处理。:确保一系列操作在同一个事务中执行,如果其中任何一部分失败,则整个事务回滚,保证数据的一致性。

2024-07-02 10:24:00 310

原创 使用命令行工具测试主机到FTP网络

检测ftp网络权限问题

2024-06-25 10:08:00 831

原创 Java多线程批量处理数据

【代码】Java多线程批量处理数据。

2024-04-26 14:28:36 1119 1

原创 SpringBoot+FTP下载文件,单文件直接下载,多文件进行打包zip下载

【代码】SpringBoot+FTP下载文件,单文件直接下载,多文件进行打包zip下载。

2024-04-19 15:06:48 674

原创 POI导出Excel,数字变成科学计数法/显示不完整

【代码】POI导出Excel,数字变成科学计数法/显示不完整。

2024-04-07 11:18:57 854

原创 java ftpclient上传文件,中文文件名乱码

【代码】java ftpclient上传文件,中文文件名乱码。

2024-01-17 09:08:24 1840 1

原创 查询数据库连接数量-数据库线程池调优

设置连接超时时间:根据连接的平均使用时长和连接数的波动情况,设置适当的连接超时时间。如果连接池中的连接较多,可以将连接超时时间设置得稍短一些,以便及时释放不再使用的连接。数据库线程池是用来管理数据库连接的,控制并发访问的数量,以避免资源耗尽和性能下降。调整最小空闲连接数:根据连接数的波动情况,调整最小空闲连接数的值。配置连接池监控和日志:添加连接池监控和日志功能,以便实时监测连接池的使用情况和性能指标,并及时发现潜在的问题。分析连接数波动情况:观察连接数的波动趋势和峰值,了解系统在不同负载下的连接需求。

2024-01-16 11:01:03 668

原创 排查GC频率 jstat gcutil命令

您可以观察不同区域(S0、S1、E、O、M、CCS)的垃圾回收百分比(以小数形式表示),以及年轻代垃圾回收次数(YGC)、年轻代垃圾回收所占用的时间(YGCT)、全局垃圾回收次数(FGC)、全局垃圾回收所占用的时间(FGCT)和总的垃圾回收时间(GCT)。使用jstat gcutil命令可以查看垃圾回收的统计信息,包括垃圾回收次数和垃圾回收所占用的时间百分比。参数pid是JVM进程的ID,interval是采样间隔的时间(以毫秒为单位),count是采样次数。

2024-01-16 10:52:02 792

原创 CPU飙升 频繁GC排查-使用jmap histro命令来查看JVM中对象的直方图

jmap是Java Virtual Machine Tool的一部分,它允许您生成JVM堆转储文件并执行各种诊断操作。可以使用jmap histro命令来查看JVM中对象的直方图。执行上述命令后,您将获得JVM堆中的对象直方图。此直方图显示每个类的实例数量和总占用空间。例如:在这里插入图片描述。参数pid是JVM进程的ID。请注意,您需要具有足够的权限才能执行此命令。

2024-01-16 10:45:12 746

原创 调用第三方接口进行Basic认证

第三方接口调用

2023-12-26 17:24:08 689

原创 MySQL 的事务隔离级别是可重复读(Repeatable Read)

在同一事务中进行多次查询时,会返回第一次查询时的快照,而不是实时的最新值。为了解决这个问题,您可以将事务隔离级别设置为读已提交(Read Committed),以确保每次查询都能读取到最新的数据。在 Spring Boot 中,可以使用。当您在同一个 Service 方法中执行了一个更新(update)操作,然后紧接着执行一个查询(select)操作时,

2023-12-07 17:00:02 698

原创 枚举解决审批状态流转

【代码】枚举解决审批状态流转。

2023-12-07 14:46:58 504

原创 checkStyle结果分析及‘static‘ modifier out of order with the JLS suggestions

【代码】checkStyle结果分析及‘static‘ modifier out of order with the JLS suggestions。

2023-12-07 11:02:33 598

原创 redis的淘汰策略

【面试】redis的淘汰策略。

2023-10-20 15:10:12 383 1

原创 两个list取交集的两种方法

【代码】两个list取交集的两种方法。

2023-10-13 16:31:14 1708

原创 @Transactional注解参数

Transactional注解参数。

2023-10-08 09:48:45 215

原创 Hutool树结构工具-TreeUtil

Hutool树结构工具-TreeUtil。service层代码。

2023-09-10 01:15:46 223

原创 使用hutool工具类jwt生成token

使用hutool工具类jwt生成token

2023-08-08 16:23:26 3953

原创 多线程消费KafkaDemo

在该消费者中,消费线程实现了Runnable接口,在其run()方法中实现了消费者实际的逻辑,通过调用ConsumerRecord.value()方法来获取消息。消费者逻辑可以根据具体需求进行实现。这是一段基于Java开发的Kafka消费者代码。在该代码中,我们使用了多线程机制、线程池和多个消费线程来同时消费Kafka中的消息。

2023-06-20 17:32:00 1214

原创 对sessionStorage进行加密

存到浏览器上:sessionStorage.setItem('password', window.btoa(passwordInput.value));解密:passwordInput.value = window.atob(sessionStorage.getItem('password'))用户登录成功以后开发者模式可以看到session的明文,新需求要求加密...

2022-05-18 17:23:17 743

原创 oracle导出excel数据变成科学计数法

问 题: 导出excel之后因为 column字符串太长导致导出到Excel时候变成科学计数法样式;sql语句: select column from table_name;解决办法:select '="'||column || '"' column from table_name;注 解:1.column为显示异常字段 2.table_name 表名...

2022-05-17 15:38:59 3101 2

原创 Mybatis-plus分页

Dao层import com.asiainfo.server.beijing.entity.IndexLabelHeatStatistics;import com.baomidou.mybatisplus.extension.plugins.pagination.Page;import org.springframework.stereotype.Repository;import java.util.List;import java.util.Map;/** * @Author lhj

2022-05-16 10:47:07 266

原创 Jwt工具类

import io.jsonwebtoken.Claims;import io.jsonwebtoken.Jws;import io.jsonwebtoken.Jwts;import io.jsonwebtoken.SignatureAlgorithm;import org.springframework.http.server.reactive.ServerHttpRequest;import org.springframework.util.StringUtils;import javax

2022-03-30 11:08:13 216

原创 Skip批量插入数据demo

private static final Integer BATCH_SIZE = 2000; // 批量查询的插入数据方法 public void batchSearchUploadOracle(MultipartFile file, String rptCode, String staffId, String numberType) throws IOException { List<Map<String, Object>> data = ne.

2022-03-08 13:57:38 107

原创 CompletableFuture用法

/** * 导出txt */ @GetMapping("/exportChannelRemuneration") @Scheduled(cron = "0 59 19 11 * ?") public void exportChannelRemuneration() { try { for (int i = 202001; i <202013 ; i++) { String n = ...

2022-03-08 13:51:54 202

原创 Java接口执行Shell 工具类+Controller

import com.jcraft.jsch.*;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.io.*;import java.util.Properties;/** * @Description: shell 执行工具类 */public class SshCommandUtil { private static final Logger LOG = LoggerFactory.ge..

2021-12-21 17:57:07 493

转载 RSA加解密工具类RSAUtils.java,实现公钥加密私钥解密和私钥解密公钥解密

import org.apache.commons.codec.binary.Base64;import javax.crypto.Cipher;import java.security.*;import java.security.interfaces.RSAPrivateKey;import java.security.interfaces.RSAPublicKey;import java.security.spec.PKCS8EncodedKeySpec;import java.sec.

2021-10-12 11:09:22 375

原创 Element-UI的dialog弹窗的右上角的叉号不能关闭弹窗

<el-dialog title="" :visible.sync="dialogTableVisible" :before-close="ai_dialog_close"> <el-tree :data="gridData" show-checkbox default-expand-all node-key="id" ref="tree" ...

2021-08-18 10:04:04 4493

原创 Java实现多文件上传(不确定个数)

@RequestMapping("xxx") public String fileImgSave(@RequestParam("filename") MultipartFile[] files,HttpServletRequest request){ //保存文件的路径 String realPath = request.getSession().getServletContext().getRealPath("/imgssss"); File path = new File(realPath);.

2020-11-04 10:21:27 466

原创 图片/PDF图片预览

package com.dzbh.bhdd.controller;import org.apache.log4j.Logger;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.Htt

2020-10-24 15:17:45 338

原创 解析xml转成对象

import com.alibaba.fastjson.JSONObject;import org.jdom2.Element;import org.jdom2.JDOMException;import org.jdom2.input.SAXBuilder;import java.io.ByteArrayInputStream;import java.io.IOException;import java.io.InputStream;import java.util.LinkedList;

2020-10-16 17:35:11 952

原创 文件上传保存到本地磁盘

package com.dzbh.util;import com.dzbh.model.DownFilePath;import org.springframework.web.multipart.MultipartFile;import javax.servlet.http.HttpServletRequest;import java.io.File;public class FileUploadUtil { /** * 上传文件 * @param request * @

2020-09-29 16:27:43 939

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除