Java
文章平均质量分 84
merlynee
很惭愧,身为一个码农,啥都会啥也不会,但是神奇的一点是别人有啥问题都能帮解决掉。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
springboot项目版本升级
springframework springcloud quartz swagger feign升级至版本原创 2022-04-11 13:43:39 · 4903 阅读 · 0 评论 -
lettuce重连后业务中断,没有异常抛出ConnectionWatchdog - Reconnecting, last destination was
记录 线上业务中使用springboot的默认redis连接,当收到业务请求时最后打印日志: [INFO ] 10:31:45.303 [lettuce-eventExecutorLoop-1-38] i.l.core.protocol.ConnectionWatchdog - Reconnecting, last destination was redis-service/XX.XXX.XXX.XXX:6379 [INFO ] 10:31:45.329 [lettuce-nioEventLoo..原创 2021-01-11 16:49:07 · 10753 阅读 · 1 评论 -
spring gateway 动态路由学习笔记和基础加载流程
前提:因为工作需要,想要搞一个动态代理,本来想用nginx定时跑脚本的方式,不过lua脚本的学习成本略高,同事提醒要不用gateway,正好学习成本能低些,也可以成体系,好控制。 略过趟坑,官网学习,百度(90%时间)等,发现能在一个地方全部解决问题的地方基本没有,只能一边尝试一边自己拼凑。这里吐槽一下官网,只有静态路由方式配置的讲解,完全没讲怎么扩展,更麻烦的是中文官网的翻译着实看不懂。 talk is cheap,show me the request.先说我的需求,vnc请...原创 2020-09-30 14:47:42 · 715 阅读 · 0 评论 -
记录由FastJSON和lombok的Accessors标签引起的反序列化的坑
坑: 如果父类Bean使用Accessors标签,子类在JSON反序列化时不会填充父类的属性。 原因: Accessors 标签生成的set方法有两种,chain模式是setXXX,返回值为this;fluent模式是XXX(),返回值为this。 两种方式返回值都是父类对象而不是子类对象。 在JSON.parseObject()方法中,会使用反射找到目标类的set方法,然后使用set方法进行值填充,那怎么判断是不是set方法呢,他规定了几个不是set方法的判断: 1.方法名大于...原创 2020-07-14 18:32:33 · 1340 阅读 · 1 评论 -
一个纯的java-redis锁,因为有更好的,暂时就只记录一下
找了很长时间,左试右试的搞了一个redis锁出来,但是被一个更好的方案取代了,有点郁闷,在此记录一下。 开始是因为redis的操作原子性问题,没有用redis自带的key过期,因为setnx 和expire是两个方法,无法保持强一致性,在高并发时候是致命的。而且保留着对redis的自带过期的不信任(这里补充一下,查了资料后发现redis的自带过期还是不错的,两种过期方式,一个是在get的时候判断原创 2018-01-15 10:15:50 · 1127 阅读 · 0 评论 -
一个特二的事,有关mybatis的数据源
要弄一个springboot + mybatis的多数据源。配置什么的都弄好了,程序启动没问题了,但是一直连不到数据库,BindingException,说我有Invalid bound statement (not found),我就纳闷了,明明启动过程还很和谐啊。万事debug一下启动过程吧,datasource bingo,sessionfactory bingo,sessiontemple...原创 2018-05-02 00:54:42 · 250 阅读 · 0 评论 -
springboot 自定义JMSListener.destination
情景: 项目在组内开发人员电脑上经常跑本地,activemq的队列名写在配置文件上。由于代码分支不一样,导致消息经常被不正常得消费掉。想要改进这个问题,最简单的是将注解@JMSListener 改为动态加载监听BEAN,但是大家不想为了这个事改变开发习惯,所以定为动态修改入队和监听的地址。 开始工作: 从JMSListener注解入手,注释中提到了JmsListen...原创 2019-01-21 16:43:08 · 4600 阅读 · 1 评论 -
使用RestTemplate 请求,接口返回400+或500+不抛出异常的方法
使用RestTemplate请求其他服务的时候,经常会遇到返回401,404,400,或者由于业务逻辑报500等情况,这种时候RestTemplate会报异常RestClientException,所以代码里面就必须catch异常再继续走逻辑,非常麻烦。 这种情况多了就想让他不报错,因为返回的ResponseEntity中已经有了返回码,返回头和返回体的全部信息,可以自己处理这些...原创 2019-05-27 14:25:46 · 27307 阅读 · 2 评论
分享