项目学习
文章平均质量分 54
草坪头
这个作者很懒,什么都没留下…
展开
-
Redis实现分布式锁
Redis实现分布式锁分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。虽然网上已经有各种介绍Redis分布式锁实现的博客,然而他们的实现却有着各种各样的问题,为了避免误人子弟,本篇博客将详细介绍如何正确地实现Redis分布式锁。可靠性首先,为了确保分布式锁可用,我们至...转载 2019-11-09 21:32:40 · 106 阅读 · 0 评论 -
jar包存在却提示NoSuchMethoderror错误
jar包存在却提示NoSuchMethoderror错误分析由于可能项目加载jar路径不一定是编码自己引用jar包的路径。故可以打印该方法加载jar的路径如下图,我的FileUtils的方法报错,分析打印加载jar的路径,发现项目调用jar包是Weblogic下的同名jar。而非自己编码下引用的jarimport com.sun.jndi.toolkit.url.UrlUtil;import org.apache.commons.io.FileUtils;import javax.print原创 2021-08-21 12:05:24 · 625 阅读 · 0 评论 -
XSS过滤器继承HttpServletRequestWrapper,重写getParameterMap方法
**XSS过滤器继承HttpServletRequestWrapper,重写getParameterMap方法**XSS过滤器写法转载 2021-04-16 21:24:58 · 975 阅读 · 0 评论 -
生成分布式项目批次号
生成分布式项目批次号原创 2021-03-29 19:31:03 · 192 阅读 · 0 评论 -
在项目中学习多线程
Thread的join方法使用一、业务背景二、代码示例一、业务背景从java调用多个存储过程,其调用的存储过程并无先后顺序要求。但存储过程需都执行完成后,代码才能执行后面的逻辑。二、代码示例 public void joinStudy(){ // 假设要五个存储过程需要调用 String[] params = {"A","B","C","D","E"}; // 存储线程,后续对线程进行遍历 List<Thread> l原创 2020-11-29 22:46:24 · 207 阅读 · 0 评论 -
ibatis在动态列查询时,出现列名无效错误(使用remapResults属性)
ibatis在动态列查询时,出现列名无效错误(使用remapResults属性)当SQL语句是查询的数据项列是动态的,需要使用remapResults属性,并将其设置为true。出现错误如下:com.ibatis.common.jdbc.exception.NestedSQLException:— The error occurred in com/ictehi/grainplat/sqlMap/sainout.xml.— The error occurred while applying a r原创 2020-10-16 20:58:32 · 1014 阅读 · 1 评论 -
自己编写参数校验类
自己编写参数校验类一、工具类的主代码二、校验结果对象类一、工具类的主代码public class CheckUtil { public static CheckResult checkParam(Map paramMap){ CheckResult checkResult = new CheckResult(); checkResult.setFlag...原创 2020-02-22 10:38:50 · 204 阅读 · 0 评论 -
反射的运用
反射的运用一、枚举类获得方法名,由传进来的nameMap字符串类型可获得方法名二、反射主代码一、枚举类获得方法名,由传进来的nameMap字符串类型可获得方法名package invoke;public enum TranferToMethod { name("nameMap","queryNameList"), appointNo("appointNoMap","quer...原创 2020-01-05 15:52:54 · 80 阅读 · 0 评论 -
自建线程池的参数介绍和spring启动类配置线程池执行定时任务
自建线程池的参数介绍1. corePoolSize2. maximumPoolSize3. workQueue4. corePoolSize、workQueue、maximumPoolSize的关系a.b.c.d.5. 参数keepAliveTime6. 参数unit7. 参数threadFactory8. 参数handler线程池中ThreadPoolExecutor构造器有7个参数,如下所示...原创 2019-11-17 11:52:27 · 299 阅读 · 0 评论