自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

kzcming的博客

好记性不如记下来时常翻看

  • 博客(127)
  • 资源 (5)
  • 收藏
  • 关注

原创 spring判断请求链接是否有效,获取 DispatcherServlet

往往我们没有对链接有效性进行校验,当访问不存在的链接的时候,是由系统抛出链接不存在或者未找到的错误.当我们相对不存在的链接进行自定义拦截,判断的时候,就需要 获取 DispatcherServlet。环境:springmvc 5.1.2。,找不到,则说明请求的链接不存在。,循环判断是否能找到。

2023-06-27 14:08:41 573

原创 Rabbitmq 设置手动确认

Rabbitmq 设置手动确认1. 基于配置的方式若代码中没有创建其他的 监听容器,可以直接在配置文件中配置spring.rabbitmq.listener.simple.acknowledge-mode=manual然后再容器中将所以要声明的监听队列,每个都在 用 @Configuration 注解的类中 用 @Bean 注解一一声明,最后在 @RabbitListener 注解的方法中 用 channel.basicAck(msg.getMessageProperties().getDeliv

2022-04-11 11:02:08 2336 1

原创 redis分布式锁实现与思考

分布式锁说明:在java中我们最常使用的加锁方式就是 synchronized关键字和各种 Lock锁,但是这种方式加的锁只能保证在单项目或者说同一个jvm中起作用.但是在现在的分布式环境下就不能很好的应对分布式环境的加锁需求,所以有了分布式锁分布式锁:分布式锁就是一种思想,指的是能在分布式环境中,在多个地方使用一个锁的时候,保证只能同时有一个持锁对象.一般是加锁的地方由常规的java的锁,变成 第三方组件或工具实现(比如:redis,memcached,基于数据库的实现,zookeeper 等等

2021-07-22 11:05:00 258

原创 synchronized 锁加的地方的说明

synchronize 锁加的地方的说明传统mvc 分层模式下,事务一般是加在service 服务层加锁地方不同:1. 加在controller 层:如果锁的代码的最终流程是数据入库,事务和数据库操作也能及时执行系统设置: springboot 架构,mysql 数据库,事务加在 service 层, 使用了mybatisPlus 框架2. 加在service 层:也能按照预想的来执行,但由于事务一般是加在service 层,可能会造成锁的代码确实是按预想的来执行,但是事务数据库

2021-06-08 10:37:02 1276

转载 gitbook study

gitbook说明gitbook 是一个简单的个人在线书籍网站,在这里可以把自己的文档整理成书籍,通俗来说,就是将分散的文档整理起来,整成一个电子书的样式参考地址gitbook 教程替换npm 的源在国内访问github ,maven ,npm 等都会很慢,因此可以将npm 的数据源换成淘宝的参考:https://blog.csdn.net/weixin_42349568/article/details/108414441查看当前源站npm config get regist

2021-05-14 15:24:37 185

原创 java8 stream 流api

流api 之 filter 方法说明:用于过滤条件,collect 方法用于将过滤条件获得的流 输出到集合代码 Stream<T> filter(Predicate<? super T> predicate);代码分析: 进一步点击 Predicate 类,javadoc 说明该类表示一个谓语词,布尔值类型, 由此说明 filter 中的lambda 表达...

2021-05-10 11:15:13 137

原创 java JMS(即java 消息服务)介绍

JMS简介JMS 即java 消息服务应用程序接口,用来规范两个应用程序,或分布式系统中各种子模块中的相互通信.JMS 使您能够通过消息收发服务(有时称为消息中介程序或路由器)从一个 JMS 客户机向另一个 JMS客户机发送消息。消息是 JMS 中的一种类型对象,由两部分组成:报头和消息主体。报头由路由信息以及有关该消息的元数据组成。消息主体则携带着应用程序的数据或有效负载。根据有效负载的类型来划...

2021-04-09 11:14:16 473

原创 java 时间字符串中毫秒值时有时无,怎么解析

java 时间字符串中毫秒值时有时无,怎么解析针对某个值 时有时无的情况,可用 [xxx] 括起来,标识public void testDate2() { // 针对某个值 时有时无的情况,可用 [] 括起来,标识 DateTimeFormatter settleTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss[.SSS]"); String date = "2021-02-

2021-04-09 10:52:28 461

原创 spring 接收处理 json 类型的请求(springMvc 默认使用jackson 处理接收的数据), json 字段的中的Date 类型会自动 转换为 Long 类型

说明spring 接收处理 json 类型的请求(springMvc 默认使用jackson 处理接收的数据), json 字段的中的Date 类型会自动 转换为 Long 类型解决方案将所有date 类型的时间,统一取为String 类型,防止 Date 类型在json 转换后,由spring接收时使用jackson 自动转换为Long 类型而造成的入库时sql执行错误可以修改 springMvc 得转换器,设置一个 格式转换,或者 为json定义得实体类上加@DateFormatter 注解

2021-04-09 10:49:01 400

原创 mysql 删除一个表中,重复的数据

mysql 删除一个表中,重复的数据代码实现说明:假设现在有一个表, lottery_base_award_info , 存有base_lottery_id, period_no 相同,但id 不同的重复数据,可以先用 period_no 作分组,然后用 HAVING 对 相同的 period_no 进行count(),数据大于1,说明数据中 period_no 有重复的,就可以返回对应重复的列中的一列,如果只是重复一次,删除查出来的列,就实现了去重SELECT * FROM xxxtalb

2021-04-09 10:33:47 260

原创 java中的正则使用

java 中的正则使用说明:在 java 中使用正则,主要是 java.util.regex.Pattern 和 java.util.regex.Matcher 这两个类相关常用的调用匹配正则的方法String#matches(arg1) // 可以看到内部也是调用的 Pattern#matches(arg1,arg2) 方法 public boolean matches(String regex) { return Pattern.matches(regex, this)

2021-03-31 17:27:48 461

原创 java获取当天是周几

java获取当天是周几方式说明用Calendar#DAY_OF_WEEK 来获取用SimpleDateFormat 的 u 周标识,格式化日期来获取用LocalDate.getDayOfWeek() 来获取代码实现package com.example.demo.util.date;import java.text.ParseException;import java.text.SimpleDateFormat;import java.time.DayOfWeek;import j

2021-03-30 17:46:52 2331

原创 java 根据 KeyPairGenerator对象生成RSA密钥对,并进行测试

java 根据 KeyPairGenerator对象生成RSA密钥对,并进行测试说明:rsa 算法根据密钥长度, 每轮 加/解密 填充 允许的最大长度,也不相同,这个地方暂时还不知道是怎么计算出来的限制:由于上面的原因,这里暂时只支持 密钥长度为 1024 / 2048 位长度实现:根据 KeyPairGenerator 对象传入密钥长度,随机种子,生成rsa 密钥编码实现 package com.example.demo.util.encrypt;import org.apache.com

2021-03-25 12:02:48 6385

转载 java 时间字符串中带 “AM“ 或 “PM“ 等指示上半天,下半天标识的解析

java 时间字符串中带 “AM” 或 “PM” 等指示上半天,下半天标识的解析AM/PM 解析时,必须切换为 英语环境 /** * 时间带 AM/PM 标识 */ public void testDate() { String date1 = "2/23/2021 10:01:24 AM";// DateTimeFormatter settleTimeFormatter = DateTimeFormatter.ofPattern("M/d

2021-03-23 15:22:46 1134

转载 httpclient 在http1.1下出现 Connection can be kept alive indefinitely , 出现长连接,返回异常

httpclient 在http1.1下出现 Connection can be kept alive indefinitely , 出现长连接,返回异常参考:https://blog.csdn.net/xiaoduanayu/article/details/78386508

2021-03-23 15:14:23 8072

转载 input 设置点击事件 当方法命名为某些名称时,不起作用,例如:onclick=‘close()‘

input 设置点击事件 当方法命名为某些名称时,不起作用例如:设置 οnclick=‘close()’ 方法在 firefox 和 chrome 上都不会起作用实质:在 JavaScript 中,应该避免使用 JavaScript 内置的保留关键字、对象、属性和方法的名称,以及 HTML 和 Windows 对象和属性和事件句柄的名称,以及 其他的非标准的保留字作为 Javascript 的变量及函数名。常见的被误用的就是 open、close、click、clear 等等其他可能的原因

2021-03-22 17:53:35 422

原创 多线程下 ArrayList 出现null的问题

多线程下 ArrayList 出现null的问题发现这个问题在某个项目中使用了ArrayList 了,将他带入到 子线程中去添加待定值,然后出现了意向不到的错误,报空指针异常,出现一个 null 值,而且该问题不必现,有时候经常跑代码才出现几次.排查反复查看代码,未发现明显可能会出现 null 的地方,返回的值(上文中的添加待定值)在其他方法中都不为null在代码中插入打印代码判断为null的情形,进行打印,加断点,分析,发现 在对添加待定值 进行为null 判断时不起作用,而 在对list

2021-02-19 17:02:58 2659

原创 mysql format函数造成的计算时的精度缺失问题

说明问题原因:mysql formt函数会对数字进行每3位加一个逗号例如:一个数 10000000 使用format函数格式化后会变成 10,000,000问题描述:当某个表有一个金额列 money 类型为 decimal(12,5) , 此时页面上需要展示3位小数,合计列也是如此,这是 用 format(money,3) 格式化每一列都正常, 但是统计总计的时候就出问题了 ,sum(format 过的金额列) 算出的金额(在某一列金额超过3位数的时候format 会给其添加逗号,会出现问题 就会很离

2021-01-28 16:08:31 617

原创 FastJson 处理json数据中对象相互引用,最后转为json字符串出现占位符(“$ref“标识循环引用)“的问题

环境fastjson 1.2.41##问题说明FastJson 问题在json对象中有多个地方引用了相同的对象,在经过几次转换转为json字符串的时候会出现占位符,然后使用fastjson 解析字符串也能正确解析,但使用其他json类库解析,无法正常还原数据,还是占位符##测试代码/** * FastJson 问题 * 测试 JSONArray(几个元素有关联,引用了相同得对象) -> 转为List -> 加入到 JSONObject 中 -> 最后转为

2021-01-27 16:17:55 888

原创 css 移除某个上级属性的影响

css 移除某个上级属性的影响或者 css中如何清除上级元素对下级元素的影响呢?设置属性值为 initial很多属性子元素会默认继承父元素的属性,如:font-size,font-weight,color等,想要去除父元素对子元素的专影响,可以对相应属元素设置initial,如:font-size:initial;就可以清除父元素的font-size对子元素的影响了。重写这个属性,覆盖上级的影响,css的样式是按照就近原则,如果元素本身有对应的属性,则以本身为准,否则则继承上级的属性...

2021-01-25 17:33:05 1680

原创 Java时间转换,日期格式化使用 YYYY-MM-dd 的潜在问题

日期格式化使用 YYYY-MM-dd 的潜在问题测试逻辑:创建两个日期格式化,一个是出问题的YYYY-MM-dd,另一个是正确用法yyyy-MM-dd分别去格式化两个不同的日期:2020年12月26日(周六),2020年12月27日(周日)代码如下@Test public void dateTest() { // 指定了两个时区 // 通过指定具体的 年月日时分秒 构建 一个 LocalDateTime 对象(无时区), 绑定 到 北京时区,转为

2021-01-25 17:05:45 1900 2

原创 使用 mybatisPlus 的 dynamic datasource 配置多数据源中的问题

使用 mybatisPlus 的 dynamic datasource 配置多数据源中的问题环境环境配置参考官方文档: https://github.com/baomidou/dynamic-datasource-spring-boot-starter问题既然是想使用多数据源,问题就是按照配置最后没有使用动态切换数据源需要注意的地方一定要在配置文件中,排除自定义的数据源创建(javax.sql.DataSource)- 例如:我使用的druid 的数据库连接池,则这里要排除他原来的创建的

2020-12-09 14:24:34 1775

原创 HttpClient 实现 socks 代理

httpclient 实现 socks 代理// ================================================= httpclient socks 代理相关 ============================================================= /** * 创建一个注册了 socks 的 httpclient * @param protocol * @return */ p

2020-11-23 10:12:43 1525 2

原创 springboot 启动报错: Multiple Dockets with the same group name are not supported. The following duplicat

报错详情org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.IllegalStateException: Multiple Dockets with the same group name are not supported. The following duplicat

2020-11-16 11:22:25 2307 1

原创 关闭mybatis 日志

关闭mybatis 日志说明- 在网上找了一大圈都没有靠谱的答案,有时候项目中的日志打印太多,需要屏蔽部分日志打印mybatis 日志的实现- 原理:就是mybatis 的日志抽取了公共的方法,需要依赖项目中的日志实现类,来实现日志打印,在不配置的时候,mybatis会按照如下的顺序去查找日志实现类Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种方式:SLF4J Apache Commons Logging Log4j 2 Log4j JDK logging

2020-11-12 15:07:09 8326 3

原创 记一次错误排查,http 网络请求相关

1.http请求超时和分布式中的熔断同时,引起的bug某天突然上线一个多月的项目,突然登录不了,且该项目代码也有一个多月没有改动了,该登录模块是我负责的,于是我就在本地运行测试,结果本地是正常的,怎么登录都没报错,我发现几个模块同时都登录不上,过程分析:一开始以为是内部调用feign 的问题,后来线上所有模块都重启,还是不行,基本判断了不是这个问题然后发现数据库中的登录日志已经记录了,说明正常的登录逻辑已经走完了,日志记录完就会返回给前台,最后仔细分析,发现代码中日志记录的地方,请求了阿

2020-11-03 12:21:37 319

原创 Ehcache 缓存查看

参考:https://blog.csdn.net/EQuaker/article/details/90140137参考:https://blog.csdn.net/xintingandzhouyang/article/details/81433235package xxx.util.cache;import net.sf.ehcache.Cache;import net.sf.ehcache.CacheManager;import net.sf.ehcache.Element;impor

2020-10-09 10:15:47 4613

原创 hibernate merge 方法未生效

hibernate merge 方法未生效发现问题:鉴于 merge 方法的底层操作复制,为了查找原因,将merge 方法分解为 update方法 和 save 方法,继续操作还是未能成功保存,这就肯定是自己的问题了,感觉和实体类有关,后台发现实体类上的注解@Table(name = "xxx",schema = "xxx")说明,name 表示 对应的表名,schema 表示 数据库名后来发现此时数据库名已经不再是之前的数据库了,jdbc 链接中指定的是另一个数据库,所有执行这些操作

2020-09-22 16:21:54 834

原创 springboot 手动加载redis 配置文件

场景:如题,springboot 手动加载 配置文件中的加载文件, 本项目的redis 模块是从另一项目中加载过来的,而另一项目使用的<!--工具类--> <dependency> <groupId>com.xiaoleilu</groupId> <artifactId>hutool-all</artifa...

2020-01-15 16:03:42 1926

原创 java 连接 rabbitMq,并处理数据的例子

从我得另外一篇文章中摘抄出来: https://mp.csdn.net/postedit/103457479rabbitMq jar版本: amqp-client-5.7.3.jar例子:说明一个rabbitmq 的例子,由于涉及隐私,某些数据已经脱敏,仅供展示连接工厂,创建连接package mq.util;import com.rabbitmq.client.Chan...

2020-01-14 10:25:31 1237

原创 动态生成google 身份验证码(口令)

依赖<!-- 谷歌验证码 --> <dependency> <groupId>com.warrenstrange</groupId> <artifactId>googleauth</artifactId> <version>1.2.0</version> </dep...

2020-01-08 15:00:26 5693

转载 用@Component 注解的类, 加载时spring 报 org.springframework.beans.factory.NoSuchBeanDefinitionException: No qu

异常说明:org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.baixun.manage.schedule.manage.VersionThread' available参考: https://blog.csdn.net/heroqiang/arti...

2019-12-30 14:47:51 832

原创 java concurrent 包之 ScheduledThreadPoolExecutor

java 自带定时任务的另一种实现使用示例://package com.ws.com.util;import java.util.concurrent.ScheduledThreadPoolExecutor;import java.util.concurrent.TimeUnit;/** * 定时执行 util */public class TimerUtil { ...

2019-12-09 15:33:20 554

转载 spring 设置事务回滚报: org.springframework.transaction.NoTransactionException: No transaction aspec

异常: org.springframework.transaction.NoTransactionException: No transaction aspect-managed TransactionStatus in scope执行的sql:UPDATE sys_config SET remark='1.准备升级 2. 升级成功 3. 升级失败 4. 升级中' WHERE c_key...

2019-10-24 17:29:55 13293

原创 freemarker 内置built-ins(翻译为程序)

例子freemarker 对 Date 类型解析freemarker 内置了很多 built-ins ,比如日期类型,直接通过 页面 ${obj} 没有输出,可以通过指定 built-ins 指定日期格式,例如: ${obj?datetime} 这样就可以输出built-ins 列表(参照 FreeMarker 2.3.28)列表如下,按字母顺序隔开:abs, absolute...

2019-10-09 10:41:38 293

转载 layui switch 开关根据传入值默认选中或不选

layui switch 开关根据传入值默认选中或不选参考:http://www.jiaochengku.net/ITjiaocheng/wangyezhizuo/4044.html动态修改switch开关值,改变开关默认存值,改变开关默认文本https://blog.csdn.net/zzz___bj/article/details/80324953使用templet(...

2019-10-09 10:38:42 13709

原创 Bean named 'defaultSockJsTaskScheduler' is expected to be of type 'org.springframework.scheduling.

错误详情:springboot + quartz + websocket (spring 自带得websocket 模块) 引起的冲突问题 contextLoads(com.kzcm.higo.HigoApplicationTests) Time elapsed: 0.033 s <<< ERROR!java.lang.IllegalStateException:...

2019-10-08 16:23:28 10264 4

原创 Shiro 整合 ehcache 缓存报: Another CacheManager with same name 'test' already exists in the same VM

Shiro 整合 ehcache 缓存报错:Factory method 'ehCacheCacheManager' threw exception; nested exception is net.sf.ehcache.CacheException: Another CacheManager with same name 'test' already exists in the same V...

2019-09-03 17:51:17 2199 3

转载 Springboot项目启动到一半卡住了,不报错

1. 今天启动项目时,启动到一半卡住了,不报错,开始我以为是timeout,后来发现不是这个原因。然后在网上找了很多资料,有些说是日志Jar包递归了,可是我同事本地跑起来却没有错,找了好久的原因,然后我想着重新import下pom.xml,重新部署jar包,果不其然,可以了。2.注意检查xml文件与mapper映射问题!!!!!3.我这边是执行run可以,但是Debug启动缓慢卡住...

2019-07-22 19:41:27 5389 1

转载 "Host 'X.X.X.X' is blocked because of many connection errors; unblock with 'mysqladmin flush-ho

Mysql 连接报错: "Host 'X.X.X.X' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'"原因:同一个ip在短时间内产生太多(超过mysql数据库max_connection_errors的最大值)中断的数据库连接而导致的阻塞 (短时间内链接错误次数过多)解...

2019-07-22 19:40:25 556

emoji_图片编码大全_11222.zip

emoji 图片资源,包含各种各样的emoji 图片和每个图片对应的emoji 编码格式,各种字符表情和字符国家符号等等

2019-11-20

tomcat 配置https

tomcat 配置https 详情, tomcat 配置http 强制跳转到https

2018-03-22

ssh整合步骤详解.txt

hibernate,spring,struts2等三种java框架,整合的详细步骤和一些注意点

2017-11-26

Hibernate主键生成策略.docx

hibernate 的主键的几种生成类型的区别,主要有那些主键类型

2017-11-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除