Java
分享一些Java知识
wcybaonier
欢迎大家给与指导和关注!共同努力,共同进步!
展开
-
activici.7 当前节点审批人为空,应该改哪几个表设置当前节点审批人
通过上述步骤,你可以为当前节点设置审批人,从而使得流程能够继续执行。需要注意的是,这种方法是直接操作数据库,可能会影响流程引擎的正常运行,因此建议仅在必要时使用,并且最好是在了解流程定义的基础上进行。如果当前审批人为空,你需要确定新的审批人并将其作为候选用户添加到。首先,你需要确定当前处于哪个任务。假设你已经确定了新的审批人。原创 2024-07-30 13:41:50 · 307 阅读 · 0 评论 -
java 实现每次从list中取5000条数据放入新list
【代码】java 实现每次从list中取5000条数据放入新list。原创 2023-12-13 15:02:08 · 526 阅读 · 0 评论 -
Kafka笔记
传统定义:Kafka 是一个分布式的基于发布/订阅模式的消息队列,主要用于大数据实时处理领域。最新定义:Kafka 是一个开源的分布式事件流平台,被数千家公司用于高性能数据管道、流分析、数据集成和关键任务应用。原创 2023-10-24 10:14:35 · 1033 阅读 · 0 评论 -
kafka原理之springboot 集成批量消费
由于Kafka的写性能非常高,因此项目经常会碰到Kafka消息队列拥堵的情况。遇到这种情况,我们可以通过并发消费、批量消费的方法进行解决。原创 2023-08-23 10:38:07 · 1849 阅读 · 0 评论 -
Linux下MongoDB定时异地备份方案
首先安装crontabs。原创 2023-08-09 17:32:06 · 859 阅读 · 0 评论 -
Java身份证合法性校验工具类
【代码】Java身份证合法性校验工具类。原创 2023-07-20 10:38:59 · 245 阅读 · 0 评论 -
Git 报错 Updates were rejected because the remote contains work that you do
这个报错实在是让我受不了了,每次不管是‘命令行’ 还是 idea 提交都会出现这样让人心态爆炸的问题。然而每次出现又重复的查找解决办法,这次实在受不了了,便有了这篇文章,希望它也能帮助到心态爆炸的你。经过多次出现同样的问题,我已经对这个问题的原因了如指掌了,这是因为在本地新建库后,与远程仓库的内容不一致导致的(远程仓库有一些内容本地没有)。问题了如指掌,但是解决方法每次都记错,所以还是记录一下吧。输入命令的地方在 idea 的下方,有一个 terminal ,点击之后,即可输入上面的命令。原创 2023-06-14 17:40:04 · 1652 阅读 · 0 评论 -
SpringBoot搭建Netty+Socket+Tcp服务端和客户端
这里为了测试,写了Main方法,可以参考服务端,配置启动类 ,实现跟随项目启动。有测试的,,,但是忘记截图了......................想写就参考服务端......原创 2023-05-19 16:19:07 · 5438 阅读 · 2 评论 -
Springboot搭建Netty+Socket+Udp服务端和客户端
【代码】Springboot搭建Netty+Socket+Udp服务端和客户端。原创 2023-05-19 16:05:33 · 1468 阅读 · 0 评论 -
SpringBoot集成Hutool防止XSS攻击实现
xss是跨站攻击脚本的简写。xss的攻击方式是发生在用户使用浏览器时候运行,通过嵌入脚本窃取用户信息(如cookie等)。相比钓鱼网站更难被发现,一般是用JavaScript实现。//拦截请求@Override@Override//先进行转义在把请求返回@Override。原创 2023-04-14 10:33:32 · 961 阅读 · 0 评论 -
SpringBoot 防护XSS攻击
利用iframe、frame、XMLHttpRequest或上述Flash等方式,以(被攻击)用户的身份执行一些管理动作,或执行一些一般的如发微博、加好友、发私信等操作。通过对XSS攻击的介绍,我们知道了XSS常从表单输入、URL请求、以及Cookie等方面进行攻击。XSS攻击方式很多,这里只介绍一些常用的XSS攻击手段以及其目的,为提出Springboot项目防止XSS攻击解决方案做说明。利用可被攻击的域受到其他域信任的特点,以受信任来源的身份请求一些平时不允许的操作,如进行不当的投票活动。原创 2023-04-12 17:18:54 · 3778 阅读 · 1 评论 -
快速搭建springboot websocket客户端
WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。HTML5 定义的 WebSocket 协议,能更好的节省服务器资源和带宽,并且能够更实时地进行通讯。HTML5 定义的 WebSocket 协议,能更好的节省服务器资源和带宽,并且能够更实时地进行通讯。浏览器通过 JavaScript 向服务器发出建立 WebSocket 连接的请求,连接建立以后,客户端和服务器端就可以通过 TCP 连接直接交换数据。原创 2023-04-10 17:20:45 · 2532 阅读 · 0 评论 -
Spring boot中出现JDK dynamic proxy使用@Resource注入实例出现问题
Spring boot :在application.properice文件中添加 spring.aop.proxy-target-class=true。因为是该实现类是实现jar包,所以Java默认用基于标准都JDK接口的代理。此问题发生在,创建批处理jar包接口(org.quartz.JobListener)的实现类,在用@Resource注解注入实例时候报错。Spring MVC:在xml配置文件中添加 proxy-target-class:true。原创 2022-12-02 09:25:18 · 293 阅读 · 0 评论 -
Java项目模块占用CPU过高问题分析
可以找到项目中具体的执行线程,接下来就是看该线程的执行逻辑是怎样的了,在idea中全局搜索该线程名,找到该线程的具体使用场景,进一步排查代码中可能导致CPU占用率过高的原因。背景:近期一个模块(暂且称为A)新上了一个需求,改动了些代码,在测试环境部署之后,该模块系统CPU使用率动不动就飙升到90%,甚至200%,严重影像其他业务执行。3.查看当前进程PID下所有的线程占用CPU情况,得到占用率最高线程PID 16466。将这个线程PID转换成16进制,转换后为4052。2.根据进程PID,找到对应的服务。原创 2022-11-28 16:03:51 · 693 阅读 · 0 评论 -
SpringBoot如何配置获取request中body的json格式参数
将请求体中的流copy一份,覆写getInputStream()和getReader()方法供外部使用。每次调用覆写后的getInputStream()方法都是从复制出来的二进制数组中进行获取,这个二进制数组在对象存在期间一直存在,这样就实现了流的重复读取。原创 2022-08-25 16:51:59 · 9097 阅读 · 1 评论 -
基于mysql实现group by取各分组最新一条数据
不加LIMIT可能会无效,由于mysql的版本问题。但是总觉得这种写法不太正经,因为如果数据量大于Limit 的值后,结果就不准确了。所以就有了第二种写法。group by函数后取到的是分组中的第一条数据,但是我们有时候需要取出各分组的最新一条,该怎么实现呢?以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。本文提供两种实现方式。...原创 2022-08-12 09:21:07 · 13914 阅读 · 2 评论 -
SpringBoot 接收xml数据
熟练的同学. 也可使用Lombok等优化一下对象!1、搭建SpringBoot项目,使用。这样也就完成了xml的数据请求与响应。这样boot项目就创建完毕了。管理只需要添加如下依赖即可。4、编写数据请求、响应类。...原创 2022-08-12 09:16:16 · 4497 阅读 · 0 评论 -
Java stream().sorted()实现排序(升序、降序、多字段排序)
sorted(Comparator com):定制排序,自定义Comparator排序器。sorted():自然排序,流中元素需实现Comparable接口。使用Comparator 提供的reverseOrder() 方法。版权协议,转载请附上原文出处链接和本声明。先按姓名升序,姓名相同则按年龄升序。版权声明:本文为博主原创文章,遵循。...原创 2022-08-12 09:10:41 · 2134 阅读 · 0 评论 -
Synchronized方法锁、对象锁、类锁区别
Synchronized方法锁、对象锁、类锁区别转载 2022-07-27 10:20:01 · 155 阅读 · 0 评论 -
把多个文件打包压缩成tar.gz文件并解压的Java实现
把多个文件打包压缩成tar.gz文件并解压的Java实现 -转载 2022-07-27 10:18:57 · 546 阅读 · 0 评论 -
Linux运行Java程序中文日志乱码
Linux运行Java程序中文日志乱码原创 2022-06-29 10:26:20 · 526 阅读 · 0 评论 -
Java下载文件到前端 中文不乱码!!!
Java下载文件到前端中文不乱码!!!原创 2022-07-27 10:17:44 · 494 阅读 · 0 评论 -
Pagehelper分页插件处理问题
Pagehelper分页插件失效, 能显示全部数据 ,但是无法分页之前的pom配置: <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.4</version> </原创 2022-03-11 16:04:30 · 265 阅读 · 0 评论 -
logback 设置按天,文件切割大小,总共日志文件大小。
<?xml version="1.0" encoding="UTF-8"?><configuration> <!-- 说明: 1、日志级别及文件 日志记录采用分级记录,级别与日志文件名相对应,不同级别的日志信息记录到不同的日志文件中 例如:error级别记录到log_error_xxx.log或log_error.log(该文件为当前记录的日志文件),而log_error_xxx.log为归档日.原创 2022-01-20 10:18:39 · 6019 阅读 · 0 评论 -
SpringBoot 通过SSH跳板机连接不能直达的IP+端口
在开发过程中,我们经常会遇到联调、测试、找bug等问题,由于项目在不同的环境,我们找问题也非常不方便,无法通过本地代码debug调试。在公司内部的局域网内,通过浏览器中ModHeader修改请求参数,代理、重定向等方式可以方便不少,但还是无法解决跨网段的问题。以下是ModHeader的代理界面,很友好的帮助我们代理,可以添加多种前端请求参数,具有PostMan的要求,请自行实践。2、SpringBoot通过跳板机连接远程(1)导入依赖包<!--ssh链接跳板机--><de.原创 2022-01-17 14:47:14 · 497 阅读 · 0 评论 -
如何查找MySQL中查询慢的SQL语句
更多如何在mysql查找效率慢的SQL语句呢?这可能是困然很多人的一个问题,MySQL通过慢查询日志定位那些执行效率较低的SQL 语句,用--log-slow-queries[=file_name]选项启动时,mysqld 会写一个包含所有执行时间超过long_query_time 秒的SQL语句的日志文件,通过查看这个日志文件定位效率较低的SQL 。下面介绍MySQL中如何查询慢的SQL语句一、MySQL数据库有几个配置选项可以帮助我们及时捕获低效SQL语句1,slow_query_l..原创 2022-01-04 16:14:05 · 4271 阅读 · 0 评论 -
Java 操作Csv工具类
package cn.unicom.util;import com.csvreader.CsvReader;import com.csvreader.CsvWriter;import java.io.File;import java.io.FileInputStream;import java.io.InputStream;import java.nio.charset.Charset;import java.util.ArrayList;import java.util.List;.原创 2021-10-15 15:14:40 · 584 阅读 · 0 评论 -
Java 操作Ftp 工具类 亲测可用
import org.apache.commons.net.ftp.FTPClient;import org.apache.commons.net.ftp.FTPFile;import org.apache.commons.net.ftp.FTPReply; import java.io.*;import java.net.SocketException; public class FTPUtil { /** * 打开FTP服务链接 * @param ftpH.原创 2021-10-15 15:05:43 · 973 阅读 · 0 评论 -
Java开发常用工具类(持续更新)
Java开发常用工具类Http工具类package com.sun.collierycommon.utils; import org.apache.commons.collections.CollectionUtils;import org.apache.commons.lang3.StringUtils;import org.apache.http.HttpResponse;import org.apache.http.HttpStatus;import org.apache.htt原创 2021-09-06 17:49:07 · 2066 阅读 · 0 评论 -
记一次[Ljava/lang/String;Ljava/lang/String;) 错误
起因:之前写了个CommonUtil.java 作为公共工具类使用 ,但是由于我这个是maven多模块的项目,别的模块之中也出现了一个名字相同的util导致出现了类冲突的原因修改:网上找了好多的解决方案,什么包有没有导错,jar包冲突之类的,为什么这个不行呢,折腾了好久,突然间一个想法冒了出来,是不是类重复了,自己一看,果然是有一个一模一样的类,在别的包里面, 项目的接构是多个maven子工程,最后合并到一个包内,改完类名以后,问题解决,不会再报此错误...原创 2021-08-30 14:21:34 · 10264 阅读 · 1 评论 -
linux部署springboot项目中文乱码
目录linux部署springboot项目中文乱码问题描述:解决办法:问题描述:将springboot项目打成jar包部署到linux服务器发现中文乱码解决办法:java -Dfile.encoding=utf-8 -jar xxxxx.jar附上启动shell脚本#!/bin/sh RESOURCE_NAME=/usr/local/app/lambda/lambda-0.0.1-SNAPSHOT.jarlogpath=/var/log/...原创 2021-08-19 17:47:33 · 1412 阅读 · 0 评论 -
Java统计List集合中每个元素出现的次数
/** * java统计List集合中每个元素出现的次数 * 例如frequencyOfListElements(["111","111","222"]) * -> * 则返回Map {"111"=2,"222"=1} * @param items * @return Map<String,Integer> * @author wuqx */ public static Map<String,Integer> .原创 2021-08-06 11:06:45 · 998 阅读 · 0 评论 -
Mybatis PageHelper分页遇到的坑,莫名其妙的增加了limit ?
背景在使用Mybatis分页插件PageHelper的时候我相信或多或少都会遇到这样的问题,明明没有分页的语句执行后sql语句被自动添加了limit ?,?,看起来非常的莫名其妙,其实这个问题非常明确,就是Java基本功的问题,由于开发使用的是pagehelper.startPage方式,弄出这个问题就是对pagehelper的分页原理不理解而导致的。首先我们先介绍一下Mybatis的分页用法。Mybatis分页用法RowBounds用法显示的使用RowBounds参数,这种方法是最安全原创 2021-07-23 15:49:52 · 12216 阅读 · 3 评论 -
Java 后端、滑块验证码实现 亲测可用(项目不同需要小改)
因为是基于Mybatis-plus来进行多数据源切换的,所以先导入mybatis-plus的多数据源pom<dependency> <groupId>com.baomidou</groupId> <artifactId>dynamic-datasource-spring-boot-starter</artifactId> <version>3.3.1</version></dependenc...原创 2021-07-23 09:08:33 · 1490 阅读 · 3 评论 -
windows下nginx的安装及使用
1.下载nginxhttp://nginx.org/en/download.html 下载稳定版本,以nginx/Windows-1.12.2为例,直接下载nginx-1.12.2.zip下载后解压,解压后如下2.启动nginx有很多种方法启动nginx(1)直接双击nginx.exe,双击后一个黑色的弹窗一闪而过(2)打开cmd命令窗口,切换到nginx解压目录下,输入命令 nginx.exe 或者 start nginx ,回车即可3.检查nginx是否...原创 2021-07-22 10:11:07 · 115 阅读 · 0 评论 -
Wrapper的使用方法记录
条件构造器AbstractWrapper是QueryWrapper(LambdaQueryWrapper) 和 UpdateWrapper(LambdaUpdateWrapper) 的父类用于生成 sql 的 where 条件, entity 属性也用于生成 sql 的 where 条件注意: entity 生成的 where 条件与 使用各个 api 生成的 where 条件没有任何关联行为List<User> users = userDao.selectList(new Query原创 2021-07-05 16:21:14 · 5899 阅读 · 0 评论 -
数据库查询出来的时间总是比存的时间多8个小时
在yml文件中加入如下代码:jdbc:mysql://127.0.0.1:3306/testdb01?serverTimezone=Asia/Shanghai原创 2021-06-24 09:36:27 · 1206 阅读 · 0 评论 -
Springboot 集成 多数据源支持
一: 导入依赖 <!-- 多数据源支持--> <dependency> <groupId>com.baomidou</groupId> <artifactId>dynamic-datasource-spring-boot-starter</artifactId> <version>3.1.0</version> </dependency>...原创 2021-06-02 16:55:54 · 789 阅读 · 0 评论 -
yml配置文件中有特殊字符解决方案
场景:使用的数据库密码中带有特殊字符*解决方案:在密码前后加单引号,如下图:如果不加单引号,Linux系统中的tomcat部署时会提示配置文件内容有错误。原创 2021-06-02 16:36:01 · 4201 阅读 · 1 评论 -
JDK8 时间转换工具类
package com.idc.utils;import lombok.SneakyThrows;import java.text.SimpleDateFormat;import java.time.LocalDate;import java.time.LocalDateTime;import java.time.LocalTime;import java.time.ZoneId;import java.time.format.DateTimeFormatter;import jav.原创 2021-06-02 16:23:38 · 331 阅读 · 0 评论