![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 55
来自喵星
一个懒人
展开
-
使用jdk自带jhat工具排查OOM问题
使用jdk自带jhat工具排查OOM问题。原创 2024-05-29 18:34:37 · 236 阅读 · 0 评论 -
Java对文件的操作
【代码】Java对文件的操作。原创 2024-05-29 18:30:29 · 406 阅读 · 0 评论 -
jdk21升级,asm报错Unsupported class file major version 65
jdk21升级,asm报错,spring-core版本5.3.18,项目springboot版本为2.6.6。原创 2023-12-09 15:57:27 · 3010 阅读 · 0 评论 -
mybatisplus手动获取数据源执行非主数据库事务
【代码】mybatisplus手动获取数据源执行非主数据库事务。原创 2023-12-08 22:00:46 · 696 阅读 · 0 评论 -
Java通过JNI技术调用C++动态链接库的helloword测试
原理就不细说了,其实就是写个库给Java调,可以百度一下,下面是HelloWorld代码测试。原创 2023-11-12 16:51:12 · 1032 阅读 · 1 评论 -
MalformedInputException: Input length = 1,statement (not found):SysConfigMapper.selectConfigList
首先由于GBK编码问题,导致了读取nacos配置报错,其次还造成了mapper无法绑定(Invalid bound statement (not found): com.ruoyi.system.mapper.SysConfigMapper.selectConfigList)RuoYiSystemApplication无法启动。经过排查,是因为使用idea编码配置错误导致的。原创 2023-10-08 21:09:23 · 551 阅读 · 0 评论 -
SpringBoot整合RocketMQ笔记
淘宝内部的交易系统使用了淘宝自主研发的Notify消息中间件,使用MySQL作为消息存储媒介,支持水平扩容。为了进一步降低成本,阿里中间件团队认为Notify可进一步优化。2011年初,Linkedin开源了kafka, 阿里中间件团队在对kafka做了充分的review之后,被kafka的无限消息堆积能力、高效的持久化速度深深吸引,但同时发现kafka主要定位于日志传输,对于使用在淘宝交易、订单、充值等场景下,还有若干特性不满足。原创 2023-10-01 23:05:04 · 1336 阅读 · 2 评论 -
SkyWalking分布式链路追踪学习
实际生产中,面对几十个、甚至成百上千个的微服务实例,如果一旦某个实例发生宕机,如果不能快速定位、提交预警,对实际生产造成的损失无疑是巨大的。所以,要对微服务进行监控、预警,对微服务的调用链路进行监控,迅速定位问题。原创 2023-09-24 12:48:09 · 614 阅读 · 0 评论 -
jdk1.8 jvm堆内存学习
堆大小=年轻代(Young Generation)+年老代(Old Generation)原创 2023-09-13 19:17:01 · 310 阅读 · 0 评论 -
AbstractRoutingDataSource,spring配置多数据源问题
在application.yml中添加配置其中加了两个数据库配置配置这两个数据源的主从关系, 及切换标识使用aop方式自动切换数据源参考:配置参考:【spring配置多数据源】spring连接多个数据库,同一套项目配置多个数据库声明事务参考:mybatis(plus)多数据源原创 2023-08-17 11:53:15 · 227 阅读 · 0 评论 -
Android设置app开机自启,网络监听,主线程完成UI渲染,HTTP网络请求工具,json数据处理,android使用sqlite,Android定时任务,日志打印
SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它的设计目标是嵌入式的,而且已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。原创 2023-07-04 18:16:21 · 2917 阅读 · 1 评论 -
mqttx read econnreset异常排查
前段时间公司新增了mqtt服务器,在我们初步测试的时候没有问题,但是随着连接数量增多,后续几天连续间隔出现READ ECONNRESET,导致项目无法正常使用,于是排查了一下问题,使用Java代码创建了测试用例,运行测试发现,当连接数建立到700左右时,该问题出现,并抛出了java.io.EOFException异常错误信息。注意,其他许多输入操作返回一个特殊值表示到达流的末尾,而不是抛出异常。EOFException:当输入过程中意外到达文件或流的末尾时,抛出此异常。根据网上的答案,找到以下文章。原创 2023-04-12 20:30:23 · 2378 阅读 · 0 评论 -
jvm常用参数 对jdk7 jdk8
Xms 设置堆的最小空间大小。-Xmx 设置堆的最大空间大小。-Xmn: 设置新生代大小-XX:NewSize 设置新生代最小空间大小。-XX:MaxNewSize 设置新生代最大空间大小。-XX:PermSize 设置永久代最小空间大小。-XX:MaxPermSize 设置永久代最大空间大小。-Xss 设置每个线程的堆栈大小-XX:+UseParallelGC: 选择垃圾收集器为并行收集器。此配置仅对年轻代有效。即上述配置下,年轻代使用并发收集,而年老代仍旧使用串行收集。原创 2023-03-31 13:46:18 · 278 阅读 · 0 评论 -
记录spring中Transactional事务注解失效的六个场景
spring基于cglib进行AOP,cglib基于父子类来实现的,子类是代理类,父类是被代理类,如果父类某个方法是被private修饰,子类的类没法拿到父类的方法,所以导致方法无法被cglib代理,进而无法使用代理方法。:因为代理需要重写方法,但是final方法无法被重写,所以无法被代理,而无法被代理所以就无法使用@Transactional注解来管理事务。:事务是跟连接绑定的,而一个连接是一个线程,新开了一个线程等于新开了一个事务,两个线程的事务管理不同。1.使用编程式事务,手动提交。原创 2023-02-17 16:37:34 · 627 阅读 · 0 评论 -
thymeleaf模板引擎语法及常用指令学习
在controller类方法中使用org.springframework.ui.Model传参。thymeleaf模板引擎常用指令及表达式。原创 2022-12-28 17:36:36 · 940 阅读 · 0 评论 -
freemarker模板引擎语法及常用指令学习
在controller类方法中使用org.springframework.ui.Model传参。原创 2022-12-28 14:02:59 · 763 阅读 · 0 评论 -
cdp4j爬虫自动化学习
cdp4j是一个Java库,它提供了高级API来通过DevTools协议控制Chrome或Chromium。它可以用于自动使用网页和测试网页。cdp4j默认情况下可以完全运行,但可以配置为运行无头Chrome或Chromium。使用cdp4j,要求必须有谷歌浏览器。原创 2022-12-11 19:49:40 · 1723 阅读 · 3 评论 -
cdp4j The status code of the opening handshake response is not ‘101 Switching Protocols‘
准备用无头模式的,也就是没有UI界面的后台运行模式,结果老是创建session异常,问题报到factory.create()方法,找了很多异常都没找到啥问题,于是排查了一下,发现关闭浏览器的情况下仍然有端口响应,于是关闭所有浏览器,发现还是不行,然后打开任务管理器,找到所有谷歌浏览器,下图就是控制台有很多浏览器进程,全部杀掉然后再重新启动程序就行了。与目标 VM 断开连接, 地址为: ''127.0.0.1:52150',传输: '套接字''进程已结束,退出代码为 1。原创 2022-12-11 19:55:39 · 863 阅读 · 0 评论 -
一个使用AndroidStudio实现的简单逆波兰表达式计算求值的App,算是安卓App入门练手项目吧
MainActivity:app创建时执行的一个主要类,里面会对页面的一些按钮或文本进行初始化,这里的初始化有两种方式,一个是通过findViewById选择页面中的某个组件进行初始化,有点类似JavaScript中的document.getElementById这个方法,只不过这个的id都是放到R.id这个map中的,另一个就是创建页面组件时,通过android:onClick属性手动添加触发事件。可选择的谷歌安卓开发语言有多种,这里选择的是Java。原创 2022-11-08 20:24:07 · 962 阅读 · 0 评论 -
Sharding-Jdbc分库分表集成Mybatis-Plus+多数据源管理
在介绍Sharding-JDBC之前,有必要先介绍下Sharding-JDBC的大家族ShardingSphere。在介绍ShardingSphere之后,相信大家会对ShardingSphere的整体架构以及Sharding-JDBC扮演的角色会有更深的了解。ShardingSphere是一套开源的分布式数据库中间件解决方案组成的生态圈,它由Sharding-JDBC、Sharding-Proxy和Sharding-Sidecar(计划中)这3款相互独立的产品组成。原创 2022-11-03 22:34:25 · 2795 阅读 · 2 评论 -
Java线程与线程池实战
则是上层的抽象类,将执行任务的流程串联了起来,保证下层的实现只需关注一个执行任务的方法即可。最下层的实现类实现最复杂的运行部分,将会一方面维护自身的生命周期,另一方面同时管理线程和任务,使两者良好的结合从而执行并行任务。原创 2022-10-14 14:07:53 · 854 阅读 · 0 评论 -
SSM jquery.ajax POST请求传数据的请求头和接收方式
前端获取data,data是一个json格式的数据。原创 2022-09-06 14:53:01 · 441 阅读 · 0 评论 -
thymeleaf if 条件判断_yangxinhu_coder的博客-CSDN博客_thymeleaf判断
模板引擎thymeleaf中的if-else判断转载 2022-09-05 16:12:03 · 516 阅读 · 0 评论 -
hibernate+durid参数配置错误导致的问题SQLServerException: 服务器无法继续执行该事务。说明: 10400000001
排查了很久发现是由于druid连接配置的问题。原创 2022-08-05 10:54:40 · 1234 阅读 · 0 评论 -
通过Tomcat开启JMX监控的方法图解
这篇文章主要介绍了Tomcat开启JMX监控,本文通过图文并茂的形式给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下。通过Tomcat开启JMX监控的方法图解_Tomcat_服务器之家。转载 2022-07-26 11:18:23 · 236 阅读 · 0 评论 -
easyexcel 第一次导入导出会报错com.alibaba.excel.exception.ExcelAnalysisException,所以自定义excel导入导出表格
由于easyexcel导入导出时如果存在null会报错,跟踪源码com.alibaba.excel.analysis.v07.XlsxSaxAnalyser#parseXmlSource,查看xmlReader.parse,发现这里try了没啥卵用,第一次启动导入或者导出时,有null值一样报错。因为excel有空值,不能直接用,所以我自定义了一个excel的导入导出......原创 2022-07-12 23:43:32 · 4344 阅读 · 0 评论 -
junit单元测试报错org.junit.runners.model.InvalidTestClassError: Invalid test class ‘xxx‘ .No runnable meth
详细错误排查发现导入的@Test注解为org.junit.jupiter.api.Test,本来应该用org.junit.Test注解的,修改为org.junit包下的注解类再启动就正常了一定要保证使用org.junit包下的Test,需要和RunWith注解所在的包一致...原创 2022-06-20 22:12:41 · 2458 阅读 · 0 评论 -
基于springboot创建的web项目整合Quartz作业调度框架
基于springboot创建的web项目整合Quartz框架原创 2022-06-19 15:02:38 · 537 阅读 · 8 评论 -
Quartz调度框架的学习使用
创建一个类,实现Job接口,实现execute方法创建调度器Scheduler使用Job实现类创建任务实例JobDetail创建触发器Trigger,使用的是SimpleTrigger触发器绑定任务实例JobDetail和触发器Trigger开启定时任务具体代码:入门2 (CronTrigger触发器)创建一个类,实现Job接口,实现execute方法创建调度器Scheduler使用Job实现类创建任务实例JobDetail创建触发器Trigger,使用...转载 2022-06-19 12:03:59 · 168 阅读 · 0 评论 -
简单配置使用mybatis-plus多数据源功能
mybatis-plus多数据源及其原理注意使用mybatis-plus版本为3.+的,不是2.+,请注意引入maven依赖坐标 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.原创 2022-05-23 00:30:52 · 984 阅读 · 0 评论 -
springsecurity中配置自定义过滤器后不通过http.addFilterBefore注册但是却能访问
HttpSecurity类中定义了初始化过滤器的集合public final class HttpSecurity extends AbstractConfiguredSecurityBuilder<DefaultSecurityFilterChain, HttpSecurity> implements SecurityBuilder<DefaultSecurityFilterChain>, HttpSecurityBuilder<HttpSecurity>原创 2022-05-19 00:17:52 · 1318 阅读 · 0 评论 -
springboot中mybatisplus2和mybatisplus3分页插件使用的区别及注意事项
springboot中mybatisplus2和mybatisplus3分页插件使用的区别及注意事项为什么要用分页插件:在实际工作中,可能有进行列表分页查询的场景,我们往往都需要做两个步骤:1. 查询所需页数对应数据;2. 统计符合条件的数据总数;而这,又会导致我们必然至少要写2个sql进行操作。这无形中增加了我们的工作量,另外,当发生需要变动时,我们又需要同时改动这两个sql,否则必然导致结果的不一致。并且,如果出现有数据库迁移的情况下,写的sql分页方式肯定又需要进行大量修改,此时引入分页插件自动原创 2022-05-16 23:54:27 · 1956 阅读 · 2 评论 -
javaweb项目从idea2017移动到idea2021后无法正常运行的错误
javaweb项目从idea2017移动到idea2021后无法正常运行的错误原创 2022-05-06 21:07:20 · 1567 阅读 · 0 评论 -
Java中的 Date、Calendar、LocalDateTime类的使用回顾
CalenderLocalDateTime原创 2022-04-26 22:16:14 · 566 阅读 · 0 评论 -
SpringMVC关于get请求传参的问题
在SpringMVC中,请求GetMapping注解的控制器方法,传参数时,如果直接使用get传递一个body参数过去,后端是不能正确接收的这儿有一个篇如何为什么get请求不能正确接收body的解释:本文有点啰嗦,没耐心的直接拉到末尾看结论。在网上可以经常看到关于 HTTP GET 请求能不能带 body 的讨论。有的人认为 GET 请求可以带 body,有的认为 GET 请求不能带 body,还有些人认为可以带但最好不带。大家各…https://zhuanlan.zhihu.com/p/45692原创 2022-03-23 22:18:32 · 2109 阅读 · 0 评论 -
经历过各种因为tomcat配置导致的bug,现整理一下tomcat各版本经常会调的参数的默认配置,仅供参考
tomcat7默认端口:8080默认协议类型:BIO默认线程池大小:200默认等待队列大小:100默认最大连接数:BIO模式下默认最大连接数是它的最大线程数(缺省是200)默认超时时间:20秒默认Post请求大小:2MB默认请求头大小:4KBtomcat8默认端口:8080默认协议类型:NIO默认线程池大小:200默认等待队列大小:100默认最大连接数:NIO模式下默认是10000,APR模式则是8192(windows上则是低于或等于maxCo原创 2022-03-21 22:48:36 · 1847 阅读 · 0 评论 -
org.apache.commons.io.FileUtils.moveFile内网项目线上bug排除记录
1.项目前端APP报错说是图片传不上, APP用原生安卓写的, 我还没学呢, 并且因为项目比较老, 所以我要去直接运行项目的话也不大可能了, 所以先看了一下错误类型, 他报了个500错误, 这个很明显就是服务端错误了, 我只需要找到为什么服务端报错就行了, 请求上传文件的路径我是通过wireshark直接得到的, 由于是内网, 并没有加ssl这些东西, 所以可以直接看到请求路径, 参数这些, 有了路径就可以去找对应服务器了, 找到服务器, 找到tomcat下面的webapps, 然后找到项目, 先看一下有没原创 2022-03-09 11:40:04 · 961 阅读 · 0 评论 -
FastDFS上传文件失败, item “tracker_server“ in ***/fast_client.conf not found
上传测试时报了一个这样的错Exception in thread "main" net.dopan.fastdfs.client.common.MyException: item "tracker_server" in /F:/Study/Java/01hello-dubbox-demo/demo-fastdfs/target/classes/fdfs_client.conf not found at net.dopan.fastdfs.client.core.ClientGlobal.in...原创 2022-02-20 02:06:49 · 1404 阅读 · 0 评论 -
mybatis-plus-boot-starter2.3.12.RELEASE版本搭配mybatis2.3.3和mysql-connector-java5.1.32
mybatis-plus版本与mysql版本spring-boot-starter依赖版本<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.12.RELEASE</version></parent&g原创 2022-02-15 17:11:37 · 2963 阅读 · 0 评论 -
excel表格导入导出测试
import com.alibaba.excel.EasyExcel;import com.my.study.web.listener.ModelExcelListener;import com.my.study.web.model.UserExcelModel;import com.my.study.web.service.IUserService;import org.apache.poi.hssf.usermodel.HSSFWorkbook;import org.apache.poi.s.原创 2022-02-10 16:49:30 · 888 阅读 · 0 评论