- 博客(31)
- 收藏
- 关注
原创 线程休眠方式
本文主要记录的是线程休眠和唤醒的学习过程。线程休眠即暂停工作,唤醒可以是自动到时间唤醒,也可有其他线程唤醒。该方法是Thread内的静态方法,线程休眠时不会释放锁资源2.TimeUnit该方法最终逻辑还是走的Thread.sleep方法,只是可以选择时间类型,同样也不会释放锁资源3.wait/notify/notifyAll该方法是属于Object的,使用时需要和synchronized配合,那么在wait休眠线程的时候,会释放出当前线程占用的锁资源;可以在其他线程中使用notify唤醒一个,也可以
2024-10-15 17:53:03
382
原创 工具类-封装通用开关
自定义注解需要设置的值values:表示需要进行验证的字段和在数字字典存的值的key,这里是数组,表明可以接收多个字段和keymessages:表示验证出错时,需要返回的报错信息,可以于values长度对应,也可以共用一个。rules:验证规则,表示验证的规则,可以和前面的字段对应,也可以共用一个注意:当messages和rules少于values时,取的是最后一个message和rule。/*** 通过开关注解*//*** @return*//*** 报错信息。
2023-11-23 10:57:19
142
原创 openfeign的动态使用
前段时间看到一个视频讲openfeign的动态使用方法,于是自己就写了一下,开始使用还算正常,但是在一些其他场景的情况下出问题了,所以就自己研究了下解决方案,记录一下。当然还有很多其他的场景没有覆盖到,希望有兴趣的多试试这样改造好像也没有比写RPC接口方便多少,O(∩_∩)O哈哈~ 算了只当记录学习过程,总结经验,继续加油吧!!!!!!望大家多指教。
2023-07-04 17:01:37
1555
4
原创 JVM常用参数配置
单纯的记录下常用参数配置,需要的时候不用到处找1、JVM常用的配置参数如、内存配置参数、GC策略配置参数、日志配置参数、异常信息参数。2、CMS、G1的常用个性化参数。3、常用的一些应用启动参数,在项目启动的时候我们需要配置哪些参数。4、各种部署场景下通过什么方式配置这些参数。本文主要记录来自于https://zhuanlan.zhihu.com/p/269591764。
2023-05-26 16:44:25
1746
原创 nacos配置自动刷新
实现静态变量动态刷新的方法有很多,自己使用自己觉得OK的就行,条条大路通罗马。只是希望对于没有思路的朋友有一点提示。大家一起努力吧!!!希望早点解封,已经半个月了。。。。。
2022-09-13 11:25:49
10520
2
原创 springboot配置读取顺序
本文主要阐述一下微服务结合配置中心、启动命令入参、本地文件都存在的情况的一个读取顺序及相同属性的赋值问题,以及简单的梳理下其原理。httpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttps。...
2022-07-30 02:27:05
1971
原创 spring监听器
实现spring监听器的方法有两种,一是实现接口ApplicationListener重写方法其方法@Componentpublic class MyApplicationListener implements ApplicationListener { @Override public void onApplicationEvent(ApplicationEvent event) { System.out.println("监听器"+event.getSource()
2022-05-07 16:41:50
2273
原创 springaop解析
首先我们编写一个用例,展示下aop的效果;这里我们使用配置类的方式处理;添加一个配置类AppConfig这里的重点是添加@EnableAspectJAutoProxy注解,这是开启aop代理;然后编写增强类;这个类需要添加@Aspect(说明其是增强类)@Component交由spring管理;通过 @Pointcut(“execution(* com.jy.demo.service.UserService.*(…))”)可以看出我们需要增强的是UserService类的方法;启动demo我们
2022-04-24 15:49:43
353
原创 Configuration注解解析
首先请问下,下面的打印语句会执行几次?@Configuration@ComponentScan(basePackages = {"com.jy.demo.*","com.jy.demo.service"})@EnableAspectJAutoProxy@Import(JyAfterFilter.class)public class AopConfig { @Bean public Apple apple(){ // 会被打印几次 ?? System.
2022-04-14 16:21:15
4507
原创 SerializeFilter——AfterFilter/BefterFilter
AfterFilter/BefterFilterBeforeFilter 序列化时在最前添加内容,AfterFilter 序列化时在最后添加内容。BeforeFilter和AfterFilter的用法类似,这里就不单独举例了,该用例中,我们主要处理的是在实际开发中常遇到的将枚举值转换为中文返回前端,当然这里不是直接转换,而是增加一个返回字段专门存放中文字段值。具体如下实体类:package com.jy.demo.model;import com.jy.demo.ann.TextDisplay;
2022-03-09 15:50:51
663
原创 SerializeFilter——ValueFilter
ValueFilterSerializeFilter是通过编程扩展的方式定制序列化。fastjson支持6种SerializeFilter,用于不同场景的定制序列化。ValueFilter是其中之一,用于修改value值的。用例如下:package com.jy.demo.SerializeFilter;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.serializer.ValueFilter;import com.j
2022-03-08 17:07:15
491
原创 SerializeFilter——NameFilter
NameFilterSerializeFilter是通过编程扩展的方式定制序列化。fastjson支持6种SerializeFilter,用于不同场景的定制序列化。NameFilter是其中之一。NameFilter用于修改Key,如果需要修改Key,process返回值则可,意思就是可以修改原字段名,具体情况如下代码package com.jy.demo.SerializeFilter;import com.alibaba.fastjson.JSON;import com.alibaba.fa
2022-03-08 16:58:18
805
原创 SerializeFilter——PropertyFilter
PropertyFilterSerializeFilter是通过编程扩展的方式定制序列化。fastjson支持6种SerializeFilter,PropertyFilter是其中之一。PropertyFilter 根据PropertyName和PropertyValue来判断是否序列化上代码package com.jy.demo.SerializeFilter;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.serial
2022-03-08 16:45:50
355
原创 SerializeFilter——PropertyPreFilter
PropertyPreFilterSerializeFilter是通过编程扩展的方式定制序列化。fastjson支持6种SerializeFilter,用于不同场景的定制序列化。其中PropertyPreFilter是根据实现该接口重写判断方法,决定字段是否展示或处理。话不多说,直接上例子吧package com.jy.demo.SerializeFilter;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.seriali
2022-03-08 16:23:41
698
原创 中缀表达式转后缀表达式思路及实现
中缀表达式转后缀表达式思路及实现package com.example.demo.postfixExpression;import com.alibaba.excel.util.StringUtils;import java.util.Stack;import java.util.regex.Matcher;import java.util.regex.Pattern;public class PostfixExpression { /** * 中缀表达式:人类正常看懂的
2021-10-08 22:26:39
202
原创 环形链表操作及约瑟夫问题
环形链表操作及约瑟夫问题单向环形链表:约瑟夫问题:假设有n个人围成一圈,约定编号为k的人从1开始数数,数到m的那个人出列,他的下一个又从1开始数数,数到m的人也出列,直到所有人都出列为止,由此产生一个出队编号的序列。例如:n = 5 5个人k = 1 从第一个开始m = 2 数到2就出列1、2、3、4、51、2出队列的编号为:2 剩余队列1、3、4、5并从3开始报13、4出队列的编号为:4剩余队列1、3、55、1出队列的编号为1 剩余队列3、5并从3开始报13、5出队列的编号
2021-09-26 22:56:52
82
原创 list根据实体类某个字段合并并处理其他字段值
list根据实体类某个字段合并并处理其他字段值背景:前段需要展示3张表的数据,如果是同一个人创建的则合并标题(标题不同,但内容相同)分析:虽然表里还有其他字段不同,但是前段所需的字段一样,所以可以创建一个实体类,查询时只取所需的字段返回测试代码如下:先创建实体类package com.example.demo.java8;public class Comment { private String id; private String name; private Stri
2021-09-24 11:52:07
2368
原创 模拟链表的各种常规操作
单链表的增删改查合并#最近开始学习数据结构,尚学堂韩老师的,只是看还是不行的,得动手码代码才行,其他的就不多说了,直接上代码吧(代码是在韩老师的基础上加了一些自己的想法)先创建模拟节点,就是简单的实体类package com.example.demo.arrayList;public class HeroNode { private int no; private String name; private String nickName; private HeroN
2021-09-24 11:00:39
120
原创 windows系统安装rabbitmq
rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统。它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,所以安装rabbitmq前需先安装erlangErlang官网地址http://www.erlang.org/downloads,下载可能会比较慢.下载完成后点击运行傻瓜式的点击"下一步"即可.安装完成后注意修改环境变量如下图:下载rabbitmq 官网http://www.rabbitmq.com/downl
2020-12-30 22:55:03
197
原创 Spring-Cloud 之zuul
简单记录下zuul的使用方法;zuul是什么?Zuul包含了对请求的路由和过滤两个最主要的功能:其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础而过滤器功能则负责对请求的处理过程进行干预,是实现请求校验、服务聚合等功能的基础.Zuul和Eureka进行整合,将Zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其他微服务的消息,也即以后的访问微服务都是通过Zuul跳转后获得。注意:Zuul服务最终还是会注册进Eureka路由:项目加入依赖:
2020-10-19 21:26:49
281
翻译 hystrix相关配置记录
简单记录下hystrix相关配置,需要的时候方便查询;Execution相关的属性的配置hystrix.command.default.execution.isolation.strategy 隔离策略,默认是Thread, 可选Thread| Semaphorhystrix.command.default.execution.isolation.thread.timeoutInMilliseconds 命令执行超时时 间,默认1000mshystrix.command.default.execut
2020-10-18 15:10:03
195
原创 开发工具问题
eclipse启动报空指针问题首先描述下问题,下载eclipse版本Version: 2020-06 (4.16.0)后,安装sts,重写启动时页面弹出报错窗口,按提示找到报错问题文件在workspace.metadata里打开.log可以看到报错信息如下:!SESSION 2020-09-01 00:16:03.133 -----------------------------------------------eclipse.buildId=4.16.0.I20200604-0540java.v
2020-09-01 22:38:28
505
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人