
java
whatzhang007
就不想写。。
展开
-
quartz的cron表达式校验,展示近10条时间
public class CronExprUtil { private CronExprUtil() { throw new IllegalStateException("CronExprUtil class"); } /** * @param cron cron 表达式 * @Description: 校验cron 表达式格式是否正确 * @return: true/false */ public static bo原创 2022-05-19 14:21:31 · 709 阅读 · 0 评论 -
MybatisPlus 自定义TypeHandler映射JSON类型为List
示例自定义映射处理类@MappedTypes({List.class})@MappedJdbcTypes({JdbcType.VARCHAR})public abstract class ListJsonTypeHandler<T> extends BaseTypeHandler<List<T>> { /** * 具体类型,由子类提供 * * @return 具体类型 */ protected abstra原创 2022-03-25 16:41:43 · 2434 阅读 · 5 评论 -
aspose.words生成pdf字体乱码为方框
描述利用aspose.words生成pdf文档发现生成文档字体乱码<dependency> <groupId>aspose.words</groupId> <artifactId>words-pdf</artifactId> <version>18.10-SNAPSHOT</version></dependency>解决原因并不是pdf乱码,乱码的化会是一堆??,方框是因为li原创 2022-03-24 16:09:03 · 4276 阅读 · 3 评论 -
python、java RSA公私钥加密解密
java RSA私钥加密、解密public static final String RSA = "RSA";public static final String RSA_ECB_NO_PADDING = "RSA/ECB/PKCS1Padding";public static final String AES_ECB_PKCS_5_PADDING = "AES/ECB/PKCS5Padding";public static final String AES = "AES";public stat原创 2022-01-12 14:01:07 · 1295 阅读 · 0 评论 -
Java RSA、AES加解密,Python RSA、AES加解密
需求python服务发起加密http请求网关,网关验签解密后路由返回加密结果,python服务解密得到明文请求加密生成随机字符 s,[a-z][A-z][0-9] 16位 ,例如:s=2zQ6EldkFtqfVm1T生成当前时间戳毫秒数(unix 时间戳)t,例如:t=1641784404645生成一个待加密字符串k:s=2zQ6EldkFtqfVm1T&t=1641784404645使用公钥加密生成密文(RSA/ECB/PKCS1Padding)m:m=RSA(公钥,k)将生成的时原创 2022-01-12 13:37:24 · 985 阅读 · 0 评论 -
Java中size>>1意思
<< 左移运算符,size << 1,相当于size乘以2>> 右移运算符,size >> 1,相当于size除以2>>> 无符号右移,忽略符号位,空位都以0补齐在LinkdList源码中,表示判断头尾优化查询性能,如下...原创 2021-10-01 18:31:21 · 3726 阅读 · 0 评论 -
G1垃圾收集器
原创 2021-09-24 18:15:20 · 76 阅读 · 0 评论 -
smart-doc开箱使用
简介smart-doc是一款同时支持JAVA REST API和Apache Dubbo RPC接口文档生成的工具,smart-doc在业内率先提出基于JAVA泛型定义推导的理念, 完全基于接口源码来分析生成接口文档,不采用任何注解侵入到业务代码中。你只需要按照java-doc标准编写注释, smart-doc就能帮你生成一个简易明了的Markdown、HTML5、Postman Collection2.0+、OpenAPI 3.0+的文档git : https://github.com/smart原创 2021-09-13 11:17:22 · 772 阅读 · 1 评论 -
Java编译技术演进
原创 2021-07-22 15:37:37 · 89 阅读 · 0 评论 -
Hibernate-Validator 验证参数
注解规则@Null 被注释的元素必须为 null@NotNull 被注释的元素必须不为 null@AssertTrue 被注释的元素必须为 true@AssertFalse 被注释的元素必须为 false@Min(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值@Max(value) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值@DecimalMin(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值@DecimalMax(va转载 2021-07-05 16:06:15 · 460 阅读 · 0 评论 -
强引用、软引用、弱引用、虚引用
https://mubu.com/app/edit/home/49DTnkDoK8J#m-YjG8OzaUV3原创 2021-06-01 18:02:59 · 65 阅读 · 0 评论 -
JVM 内存溢出泄露
https://mubu.com/app/edit/home/49DTnkDoK8J#m-FGxgFAlQU6原创 2021-06-01 13:55:32 · 92 阅读 · 0 评论 -
JVM虚拟机知识点(二)
https://mubu.com/app/edit/home/49DTnkDoK8J#o-zVTS6djhWU原创 2021-05-31 18:20:37 · 83 阅读 · 0 评论 -
JVM虚拟机知识点(一)
https://mubu.com/app/edit/home/49DTnkDoK8J#m-zVTS6djhWU原创 2021-05-31 18:04:15 · 140 阅读 · 0 评论 -
JVM参数配置及性能监控
原创 2021-05-28 17:30:18 · 233 阅读 · 0 评论 -
JVM垃圾回收
原创 2021-05-28 17:25:25 · 72 阅读 · 0 评论 -
JVM类加载机制
原创 2021-05-28 17:22:52 · 84 阅读 · 0 评论 -
JVM内存结构
原创 2021-05-28 17:20:25 · 49 阅读 · 0 评论 -
JVM编译器
原创 2021-05-28 17:16:22 · 89 阅读 · 0 评论 -
redis查看主从状态信息master和slave
方法一:方法二:原创 2021-02-01 09:52:26 · 2465 阅读 · 0 评论 -
Json数据剪切,过滤
需求api调用对为审批通过的字段进行网关剪切过滤,使用户只能看到申请的字段例:原始json{ "aa": { "aaa": "aaa", "bbb": "bbb", "ccc": "ccc" }, "bb": { "aaa": "aaa", "bbb": "bbb", "ccc": "ccc" }}裁减过滤后{ "aa": { "aaa":..原创 2020-11-26 13:14:31 · 1847 阅读 · 0 评论 -
反射获取List类型
VO@Datapublic class Data { private List<AA> sysDataDictList; private List<BB> sysDataDictDtlList;}获取AA、BBField[] fields = Data.class.getFields();for (Field field : fields) { String fieldType = getFieldsType(field);}private原创 2020-12-25 10:51:24 · 2526 阅读 · 0 评论 -
java ping执行
try { Process pro = Runtime.getRuntime().exec("ping -c 2 " + url); if (Objects.isNull(pro)) { throw new BusinessException(); } string = IOUtils.toString(new BufferedReader(new InputStreamReader(pro.getInputStream(), StandardCharsets原创 2021-04-12 10:27:55 · 83 阅读 · 0 评论 -
加密工具(md5、SHA1、SHA256、RSA、AES、DES)
自己写的加密utilimport cn.hutool.core.lang.Assert;import org.springframework.util.DigestUtils;import javax.crypto.Cipher;import javax.crypto.KeyGenerator;import javax.crypto.SecretKeyFactory;import javax.crypto.spec.DESKeySpec;import java.math.BigInteger原创 2021-03-11 18:29:05 · 1088 阅读 · 0 评论 -
jar包修改替换class、jar文件
jar修改替换class方法一:vim大法上下光标,回车进入文件接下来就是vim的修改wq了方法二:java 命令替换 java uvf app.jar *.Aa.class编译javac -cp app.jar Aa.javajar uvf app.jar com/zhang/test/Aa.class方法三 解压 替换 打包解压jar xvf app.jar打包jar cfM0 app.jar 打包的目录1 目录2...原创 2021-03-09 15:24:13 · 2262 阅读 · 0 评论 -
下载安装jd-gui(Mac)
下载官网: http://jd.benow.ca/下载 https://github.com/java-decompiler/jd-gui/releases/download/v1.6.6/jd-gui-osx-1.6.6.tarGitHub https://github.com/java-decompiler/jd-gui兼容macOS Big Sur参见 JD-GUI 的issue :https://github.com/java-decompiler/jd-gui/pull/336替原创 2021-01-20 16:00:17 · 822 阅读 · 0 评论 -
URL中获取QueryString的参数
获取url中的请求参数String queryStr = ctx.getRequest().getQueryString();Map<String, List<String>> result = new HashMap<>(10);if (!StringUtils.isEmpty(queryStr)) { StringTokenizer st = new StringTokenizer(queryStr, "&"); int i; w原创 2020-12-29 10:24:10 · 763 阅读 · 0 评论 -
Optional优雅判空
方法使用原创 2020-12-28 15:39:54 · 140 阅读 · 0 评论 -
定时调度汇总
Springboot定时任务技术选型java.util.Timer 多任务、串行、粒度小,内存化ScheduledExecutorService 线程池并发执行,内存化@Scheduled 串行(可配置为并行)轻量化,内存化Quartz 分布式,持久化,高可用,数据库悲观锁elastic-job 弹性分布式,zookeeper协调,高可用xxl-job 轻量级,分布式,调度中心可视化使用Timer//schedule(TimerTask task, long delay, l原创 2020-12-23 13:36:14 · 530 阅读 · 1 评论