随笔分类 -  【Java系列】

1 2 3 4 5 ··· 7 下一页

Mybatis-Plus系列---【自定义sql拦截器打印完整sql及耗时】
摘要:1.自定义sql拦截器(注意:Executor是org.apache.ibatis.executor.Executor包下的,不要导错了) import cn.hutool.core.util.ObjectUtil; import lombok.extern.slf4j.Slf4j; import 阅读全文

posted @ 2025-12-03 15:45 少年攻城狮 阅读(14) 评论(0) 推荐(0)

工具类系列---【使用Hutool工具类更优雅的实现排序】
摘要:1.问题 我们在内存中处理排序时,虽说有了stream流,好多了,但是总是拖好长一堆尾巴,感觉不太优雅,null as last也需要单独处理,现在有了hutool中的工具类,这个问题就有了更好的解决方案。 2.案例 List<User> userList = new ArrayList<>(); 阅读全文

posted @ 2025-12-02 10:57 少年攻城狮 阅读(5) 评论(0) 推荐(0)

SpringBoot3系列---【SpringBoot3集成sqlite】
摘要:SpringBoot3集成sqlite 1.引入pom.xml <dependencies> <dependency> <groupId>org.xerial</groupId> <artifactId>sqlite-jdbc</artifactId> <version>3.34.0</versio 阅读全文

posted @ 2025-08-23 01:13 少年攻城狮 阅读(92) 评论(0) 推荐(0)

JVM系列---【如何使用jvisualvm排查OOM问题?】
摘要:如何使用jvisualvm排查OOM问题? 1.打印堆日志 1.启动时添加jvm参数(推荐) 在启动参数中加入下面的参数,这样会在系统OOM的时候自动打印dump文件,一般生成在项目根目录下,名字一般叫java_pid4545.hprof。 -XX:+HeapDumpOnOutOfMemoryErr 阅读全文

posted @ 2025-07-14 11:52 少年攻城狮 阅读(86) 评论(0) 推荐(0)

Java系列---【如何判断一个Object对象不为(null,"null","")?】
摘要:1.如何判断一个Object对象不为(null,"null","")? 2.方案 使用hutool中的ObjUtil Object acctNo = null; acctNo = inputJson.getByPath("$.acctNo"); //ObjUtil.isNotNull(acctNo) 阅读全文

posted @ 2025-05-21 11:58 少年攻城狮 阅读(49) 评论(0) 推荐(0)

SpringBoot系列---【Springboot整合logback自定义配置彩色日志】
摘要:一、格式说明 %-: "-"号指信息输出时左对齐 %p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL %d: 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy-MM-dd HH:mm:ss.SSS},输出类似:2024 阅读全文

posted @ 2025-03-19 22:44 少年攻城狮 阅读(574) 评论(0) 推荐(0)

SpringBoot系列---【SpringBoot集成健康探针和prometheus】
摘要:1.前提 资料大多说的都是2.3.x,实际亲测,spring-boot-starter-parent支持健康探针的最低版本是2.3.3.RELEASE。为什么要集成健康探针?健康探针通常包括 存活探针(Liveness Probe) 和 就绪探针(Readiness Probe),用于检查应用容器的 阅读全文

posted @ 2025-01-15 00:22 少年攻城狮 阅读(158) 评论(0) 推荐(0)

常见问题系列---【org.apache.catalina.connector.ClientAbortException: java.io.IOException: Broken pipe】
摘要:1.错误信息 org.apache.catalina.connector.ClientAbortException: java.io.IOException: Broken pipe at org.apache.catalina.connector.OutputBuffer.realWriteByt 阅读全文

posted @ 2025-01-06 18:59 少年攻城狮 阅读(1526) 评论(0) 推荐(0)

Http请求系列---【http的几个请求时间分别代表什么?以及如何设置?】
摘要:在HTTP客户端编程中,通常涉及以下几种关键的超时设置: 连接超时 (connectTimeout): 定义:在与服务器建立连接时等待的最大时间。这包括DNS解析时间、连接建立时间等。 作用:如果在指定的时间内无法建立连接,抛出异常(如 SocketTimeoutException)。 用途:用于防 阅读全文

posted @ 2024-12-06 23:31 少年攻城狮 阅读(722) 评论(0) 推荐(0)

并发编程系列---【数组切割并行查询-解决sql的in超过1000的问题】
摘要:1.问题 List<List<Object>> splitList = CollUtil.split(dataList, 800); List<User> resultList =new ArrayList<>(); // 使用parallelStream输出切割后的结果,每个子列表的大小 spli 阅读全文

posted @ 2024-12-06 18:28 少年攻城狮 阅读(43) 评论(0) 推荐(0)

Mybatis-Plus系列---【解决null值字段不更新的问题】
摘要:解决null值字段不更新的问题 1.问题 我的MP版本是3.3.2,用Mybatis-Plus的updateById()来更新数据时,无法将字段设置为null值(更新后数据还是原来的值)。 2.分析 默认情况下,Mybatis-Plus在更新时会判断字段是否为null,如果是null,则不设值(不将 阅读全文

posted @ 2022-12-08 23:47 少年攻城狮 阅读(3333) 评论(0) 推荐(1)

Mysql系列---【使用慢日志查询分析sql语句】
摘要:1.查看慢日志是否开启 mysql> show variables like 'slow_query%'; + + + | Variable_name | Value | + + + | slow_query_log | OFF | | slow_query_log_file | /mysql/da 阅读全文

posted @ 2022-09-20 12:30 少年攻城狮 阅读(67) 评论(0) 推荐(0)

MybatisPlus系列---【时间查询】
摘要:1.问题描述 项目中经常遇到这样的问题,有个查询条件是日期,或者日期范围,但是数据库一般存的是日期时间,想要查询,肯定要做格式化后再比较。不使用MybatisPlus的时候,一般都用Mysql的Tochar进行处理,使用MybatisPlus的时候,有没有更优雅的写法呢? 2.解决方案 注意:bet 阅读全文

posted @ 2022-08-22 20:30 少年攻城狮 阅读(3084) 评论(0) 推荐(0)

工具类系列---【MD5加密判断两个对象是否发生变化】
摘要:1.背景 项目中遇到这样的情况,编辑的时候需要修改发布状态为未发布,但是如果不做控制的话,内容没发生变化,点了编辑,仍然修改了状态。因此,需要对前端提交的编辑对象和数据库中的对象进行对比,如果没变,就直接返回“内容未发生改变”。 2.代码 MD5加密后的长度是32位,对同一个内容每次加密后的结果是相 阅读全文

posted @ 2022-08-03 09:53 少年攻城狮 阅读(342) 评论(0) 推荐(0)

Mybatis-Plus系列---【增、删、改、查常用Demo】
摘要:1.新增 @PostMapping("/add") public R<Boolean> insert(@RequestBody BusinessCustomer businessCustomer) { return add(this.businessCustomerService.save(busi 阅读全文

posted @ 2022-07-23 15:24 少年攻城狮 阅读(554) 评论(0) 推荐(0)

SpringBoot系列---【Spring中如Service有多个实现类,它怎么知道该注入哪个ServiceImpl类?】
摘要:方法一 Controller中注入service的时候使用@Autowired自动注入,@Qualifier("beanId")来指定注入哪一个。 方法二 Controller中注入service的时候使用@Resource(type = 类名.class)来指定注入哪一个。 #方法三 每个serv 阅读全文

posted @ 2022-07-13 09:18 少年攻城狮 阅读(415) 评论(0) 推荐(0)

SpringBoot系列---【如何自定义Starter】
摘要:一、前置知识: maven项目打包参考连接:https://www.cnblogs.com/hujunwei/p/16381945.html 二、自定义starter 1.命名规范 自定义的Starter官方建议:叫xxx-spring-boot-starter。 2.新建maven项目,结构如下 阅读全文

posted @ 2022-06-16 15:48 少年攻城狮 阅读(1054) 评论(0) 推荐(0)

maven系列---【普通的java项目如何打包】
摘要:1.新建一个空的maven项目 2.pom文件中只添加需要的maven坐标,并编写自己的GAV坐标 3.在src下的java目录下新建自己的域名目录,编写工具类代码,或实体类代码 4.使用idea右面的maven插件,或者使用控制台mvn手动打包,install或上传到私服 5.在新项目中就可以通过 阅读全文

posted @ 2022-06-16 14:51 少年攻城狮 阅读(761) 评论(0) 推荐(0)

Docker系列---【使用docker搭建fastdfs并使用SpringBoot实现文件上传下载】
摘要:Docker安装FastDFS 1.搜索镜像 docker search fastdfs 2.下载镜像 docker pull delron/fastdfs 3.创建Tracker容器 # tracker服务的默认端口为22122 docker run -d --name tracker --net 阅读全文

posted @ 2022-06-14 01:09 少年攻城狮 阅读(336) 评论(0) 推荐(0)

SpringBoot系列---【SpringBoot集成EasyExcel实现导出Excel文件】
摘要:1.引入pom依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.2.8</version> </dependency> 2.常用注解 2.1 @ExcelPrope 阅读全文

posted @ 2022-06-09 16:29 少年攻城狮 阅读(638) 评论(0) 推荐(0)

1 2 3 4 5 ··· 7 下一页

导航