
笔记
jcmcom
you ever come here
展开
-
(接口反爬虫实战)前后端加密处理:AES加密算法
前后端接口参数加密处理:AES加密算法原创 2022-09-13 14:30:55 · 1737 阅读 · 0 评论 -
在异步线程中使用request的正确做法
在异步线程中获取了request中的参数,然后下一个请求是get请求的话,会偶尔出现参数丢失的问题.在异步线程中使用request。提示没有传参数,实际传了.原创 2022-09-06 09:46:28 · 1047 阅读 · 0 评论 -
mysql更新后变成科学记数,CONVERT函数解决
mysql更新后变成科学记数,CONVERT函数解决原创 2022-08-24 17:53:54 · 2651 阅读 · 0 评论 -
java修改Excel文件内容
java修改excel内容原创 2022-07-19 17:53:13 · 4971 阅读 · 3 评论 -
一键切换git分支
git分支一键切换原创 2022-07-15 15:20:40 · 805 阅读 · 0 评论 -
Map排序工具类(正序,倒序)
/** * map工具类 * **/public class MyMapUtils { /** * 根据map的key排序 * @methodName orderByKey * @param map 原始map * @param isDesc 是否降序 * @return java.util.Map<K,V> */ public static <K extends Comparable<? su.原创 2021-10-27 09:51:44 · 2148 阅读 · 0 评论 -
[小记] 按比例下发数据思路demo
demo如下,如果是多个节点的服务,就相应替换为redis队列处理.public static void main(String[] args) { /* * 测试按比例下发数据 */ int i = 1000000;//模拟请求次数 int countA = 0; int countB = 0; int countC = 0; LinkedBlockingDeque原创 2021-02-05 10:38:30 · 185 阅读 · 0 评论 -
【缓存】增删改数据时,更新缓存的正确姿势!
public void updateCache() { // 没有开启事务,直接更新 if (!TransactionSynchronizationManager.isSynchronizationActive()) { logger.info("<<<<<<<<[未开启事务]>>>>>>>>>"); // 异步更新缓存 ..原创 2020-11-25 16:56:37 · 490 阅读 · 0 评论 -
【笔记】并发查询缓存工具类,自用
package com.test.common.redis;import cn.hutool.core.collection.CollectionUtil;import cn.hutool.core.util.ObjectUtil;import com.gexin.fastjson.JSON;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.lang.reflect.ParameterizedType;i.原创 2020-11-17 10:10:18 · 557 阅读 · 0 评论 -
【笔记】mysql的json类型的使用
新增:INSERT INTO test_json ( json_value, create_time )VALUES ( '{"name":"limingming","age":15}', now() );查询://查询全部jsonSELECT json_value ->> '$' AS jsonValueFROM test_json;//查询json指定字段SELECT json_value ->> '$.name' AS n原创 2020-09-27 18:37:50 · 219 阅读 · 0 评论 -
java中双基快速排序DualPivotQuicksort源码
在1.7之后的版本中, Arrays.sort()方法在操作过程中实际调用的是DualPivotQuicksort类下的sort方法。DualPivotQuicksort.sort()源码: /** * Sorts the specified range of the array using the given * workspace array slice if possible for merging * * @param a the arra原创 2020-09-04 15:35:48 · 186 阅读 · 0 评论 -
【小记】谷歌浏览器安装Axure插件,无需下载
查找Axure在Chrome扩展插件在Axure生成的HTML文件中找到“resources”文件夹--找到“chrome”文件夹--可以看到一个名为“axure-chrome-extension.crx”的文件,改文件即为Axure谷歌Chrome浏览器插件。1.打开扩展程序页面2.将文件拖到这个页面中如果浏览器显示,程序包无效:“CRX_HEADER_INVALID”,将后缀为 .crx 的插件文件 改名为后缀为 .zip 的文件。然后再拖到这页面就可以了。...原创 2020-08-31 17:03:21 · 495 阅读 · 0 评论 -
【日常小记】BC比较软件的使用,cmd删除文件,文件夹存在空格时导致失败
背景刚好需要用到比较软件,但是需要pj。于是安装了BC使用BC时,因为证书问题,需要30天删除缓存文件。于是写一个bat文件,通过定时任务去执行bat脚本,达到可以使用。写bat脚本时,运行出错。原因使用cmd命令行删除文件时,如果有文件夹有空格,那么路径就无法识别,导致失败。解决方法路径使用引号应用。如del /f /s /q "C:\Users\xxx\AppData\Roaming\xxx xxx\*.*"附录:windows增加定时任务:我的电脑--&g.原创 2020-08-31 14:00:55 · 287 阅读 · 0 评论 -
linux远程连接redis的步骤
远程连接redis两个步骤:1.redis-cli -h 连接地址 -p 端口例如:redis-cli -h r-12345678.redis.rds.aliyuncs.com -p 63792.auth 密码例如:auth test123456PS:前提是装了redis-cliPPS:记录一下,毕竟几乎不用命令行连接,都是用的可视化工具连接的。...原创 2020-08-07 16:25:13 · 2578 阅读 · 0 评论 -
【笔记】接口幂等性
概念接口幂等性就是用户对于同一操作发起的一次请求或者多次请求的结果是一致的,不会因为多次点击而产生了副作用。那么如何设计接口才能做到幂等呢?常见的两种实现方案:1. 通过代码逻辑判断实现:比如判断状态是否一致或者其它条件进行判断2. 使用token机制实现:请求携带token,请求成功时首先执行删除redis中的token,如果成功,说明请求是一致也就是只请求了一次,接...原创 2020-05-06 14:47:55 · 159 阅读 · 0 评论 -
mysql的函数GROUP_CONCAT,以及将结果集用map封装返回
GROUP_CONCAT把分组后的字段进行拼接;并且可以自定义分隔符号例如:名字相同的用户的id的结果以;分隔SELECT name as 'name',GROUP_CONCAT(id SEPARATOR ';') as 'idStr' FROM user GROUP BY name结果集用map去接收service代码示例:List<Map<Stri...原创 2020-03-29 22:58:33 · 1562 阅读 · 0 评论 -
Spring Boot启动报错问题: The Bean Validation API is on the classpath but no implementation could be found
背景:项目代码放到自己的电脑运行,然后启动main方法报错.错误信息:[org.springframework.validation.beanvalidation.OptionalValidatorFactoryBean]-Failed to set up a Bean Validation providerjavax.validation.ValidationException: U...原创 2020-02-25 13:35:57 · 11251 阅读 · 0 评论 -
清理系统盘垃圾文件(window.old文件,更新文件)
今天一看C盘突然爆满了,然后进行清理工作.第一步:第二步:第三步:找到:以前的windows安装文件.更新文件等等..勾选清理原创 2020-01-23 15:51:32 · 245 阅读 · 0 评论 -
list工具类
public class ListUtil { /** * @describe 依据某个字段对集合进行排序 * * @param list * 待排序的集合 * @param fieldName * 依据这个字段进行排序 * @param asc * ...原创 2019-12-05 16:02:52 · 328 阅读 · 0 评论 -
springboot发送邮件的一个小坑
背景:之前的是用的http通道,所以没有mail.smtp.socketFactory.class那个属性。但是切换https后就发送失败了。所以https通道,要加上那个属性,否则发送会失败: @Bean public JavaMailSender innerJavaMailSender() { JavaMailSenderImpl jms=new JavaMailS...原创 2019-10-28 10:23:34 · 927 阅读 · 0 评论 -
【java】常用正则表达式校验,邮箱手机号等等
import java.util.HashMap;import java.util.Map;import java.util.regex.Pattern;/** * 正则验证工具 * */public class RegularUtil { /** * 正则表达式:验证用户名 */ public static final String REGEX...原创 2019-10-25 11:40:10 · 1418 阅读 · 1 评论 -
Springboot项目编译正常启动Unable to start embedded Tomcat报错,A child container failed during start
jar包冲突了:servlet-api包冲突了问题解决错误日志:Caused by: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getVirtualServerName()Ljava/lang/String;异常信息里有NoSuchMethodError,这种错误一般是因为jar包冲突引起的。根据相关资...原创 2019-10-23 10:54:33 · 605 阅读 · 1 评论 -
【工具类】java导出excel,实现自动分页,多sheet
import java.beans.BeanInfo;import java.beans.IntrospectionException;import java.beans.Introspector;import java.beans.PropertyDescriptor;import java.io.OutputStream;import java.lang.reflect.Metho...原创 2019-10-14 15:39:50 · 2557 阅读 · 0 评论 -
logbak配置文件,已上生产
logbak.xml文件如下:<?xml version="1.0" encoding="UTF-8"?><configuration debug="true" scan="true" scanPeriod="30 seconds"><appender name="CONSOLE-OUT" class="ch.qos.logback.core.Conso...原创 2019-10-14 15:25:17 · 278 阅读 · 0 评论 -
【多线程实践】返回各个线程的结果Future的使用
例子:try { List<Map<String, Object>> resList = new ArrayList<Map<String, Object>>(); // 创建线程池:当前可用数就可以了;多了也没用,cpu执行不过来还是会在等待; ExecutorService executor...原创 2019-10-12 18:00:51 · 526 阅读 · 0 评论 -
redis作为队列使用,并设置保留队列中最新的消息的大小
开发日记队列按顺序消费:1.左进右出,2.右进左出例子:存:lpush(key, value)取:rpop(key)指定队列的大小ps:redis队列是个List,所以下标从0开始例子:保留最新的20条消息:ltrim(key, 0, 19)...原创 2019-10-12 16:24:43 · 1496 阅读 · 0 评论 -
js强制刷新某个iframe
js中对这个iframe使用:(myIframe为要刷新的iframe的id)$('#myIframe').attr('src', $('#myIframe').attr('src'));原创 2019-04-10 11:03:33 · 1932 阅读 · 0 评论 -
java项目设置多数据源
1.配置文件中配置多个数据库信息2.xml中加载配置文件,设置数据源连接信息:如下,设置两个数据源(financeDataSource,ordersDataSource) <bean id="financeDataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="clos...原创 2019-04-10 16:55:24 · 3258 阅读 · 1 评论 -
【 踩坑】center OS 5.1使用MobaXtem重启tomcat的问题
center OS 5.1使用MobaXtem重启tomcat的问题:tomcat运行一段时间后会自动死亡;这是坑!!!MobaXtem对老版本的OS支持不够友好!!!!原创 2019-04-17 14:14:48 · 442 阅读 · 0 评论 -
js动态版本号
html页面引入js:<script type="text/javascript"> //动态版本号 document.write('<script src="/js/common/require.js?v='+(new Date()).getTime()+'"><\/script>'); </script>...原创 2019-02-14 14:09:11 · 5377 阅读 · 2 评论 -
针对get方法传输特殊符号(如&)时,会出现参数不完整
解决方法:对参数进行encodeURIComponentvar requstParamer = encodeURIComponent(jsonParam); 小tipencodeURI和encodeURIComponent两者区别:encodeURIComponent支持更多的特殊字符编码,例如&符号,而前者不行;所以对参数进行编码传输,优先使用后者。...原创 2019-02-18 15:02:14 · 1578 阅读 · 0 评论 -
mysql权限说明
Select_priv:用户可以通过SELECT命令选择数据。 Insert_priv:用户可以通过INSERT命令插入数据; Update_priv:用户可以通过UPDATE命令修改现有数据; Delete_priv:用户可以通过DELETE命令删除现有数据; Create_priv:用户可以创建新的数据库和表; Drop_priv:用户可以删除现有数据库和表; ...翻译 2019-01-30 11:42:12 · 1365 阅读 · 0 评论 -
【笔记】mysql一行的字符限制 Row size too large.
Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs ...原创 2019-01-23 14:21:22 · 1288 阅读 · 0 评论 -
返回前端,同时开启异步任务
package com.it.test.java;public class AsynTask { private static void asynTask(){ try { Runnable runnable = new Runnable() { public void run() { ...原创 2018-11-15 11:35:12 · 841 阅读 · 0 评论 -
mysql按指定顺序输出结果
使用field函数例子:select * form user where name in('a','b','c') order by field ('name,'a','b','c');在field后加上对应的字段名,如name;原创 2019-05-09 18:48:57 · 1916 阅读 · 0 评论 -
【异常信息工具类】发送异常信息到邮件
public class MyExceptionUtil { private static String localIp; static{ try { localIp=InetAddress.getLocalHost().getHostAddress(); } catch (UnknownHostException ...原创 2019-10-08 18:01:43 · 303 阅读 · 0 评论 -
企业微信聊天机器人demo
import java.io.IOException;import org.apache.http.client.methods.CloseableHttpResponse;import org.apache.http.client.methods.HttpPost;import org.apache.http.entity.StringEntity;import org.apache...原创 2019-10-08 15:35:57 · 2466 阅读 · 0 评论 -
self4j日志工具类 : LogUtil
import java.text.MessageFormat;import org.slf4j.Logger;import org.slf4j.LoggerFactory;/**** 日志工具类*/public class LogUtil { /** * logger */ protected Logger log = null;...原创 2019-10-09 09:49:39 · 611 阅读 · 0 评论 -
【linux笔记】不定期更新
1.替换文本中字符例如:替换a.txt中第8行的debug为daysed -i "8s/debug/day/g" a.text2.在某行插入字符例如:在第8行插入sed -i "8i 这是插入的内容" a.text3.替换日志级别脚本例子:日志打印sql的将dao日志级别设置为debug就可以了#只需打印sql就可以了sed -i '147i <...原创 2019-09-19 18:03:16 · 155 阅读 · 0 评论 -
【笔记】linux脚本的简单加密和解密
gzexe加密(压缩)和解密(解压)例子:test.sh脚本1.加密使用gzexe命令,它会把原来的文件备份为 test.sh~ ,同时 test.sh 即被变成加密后的可执行文件gzexe test.sh2.解密查看脚本,找到 “skip=44”,这里44就表示从44行开始是被加密过的,只需要把44行之后的内容重新生成一个压缩文件即可。(1).在当前目前生成压缩文件:...原创 2019-09-19 17:40:31 · 1233 阅读 · 0 评论