嘿嘿帆
码龄10年
关注
提问 私信
  • 博客:63,885
    63,885
    总访问量
  • 14
    原创
  • 434,794
    排名
  • 7
    粉丝
  • 0
    铁粉
  • 学习成就
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:上海市
  • 加入CSDN时间: 2014-11-09
博客简介:

qq_23107097的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    3
    当前总分
    231
    当月
    1
个人成就
  • 获得44次点赞
  • 内容获得5次评论
  • 获得226次收藏
  • 代码片获得667次分享
创作历程
  • 2篇
    2023年
  • 6篇
    2022年
  • 18篇
    2021年
  • 7篇
    2020年
成就勋章
TA的专栏
  • jvm
    2篇
  • Redis 缓存
    6篇
  • kafka
  • 优雅写代码
    1篇
  • Java
    6篇
  • spring
    2篇
  • 中间件
    1篇
  • 底层知识
    1篇
  • linux
  • 多线程容器
    2篇
  • 数据库
    3篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    spring架构
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

351人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Resolving Maven dependencies卡死

修改maven Importing的jvm参数, 默认为700多, 直接修改成 -Xms1024m -Xmx2048m。检查了一下Maven的配置都没有任何问题,推荐一个比较快速有效的解决方法。重启Resolving Maven dependencies立刻就消失了。更新了最新的idea;打开Settings。
原创
发布博客 2023.12.18 ·
639 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

MacOS 安装homebrew 以及nvm,node

linux 中homebrew 安装软件的简要过程
原创
发布博客 2023.10.26 ·
492 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

mac 切换root用户

mac 用户切换
原创
发布博客 2022.09.05 ·
5754 阅读 ·
1 点赞 ·
1 评论 ·
4 收藏

过滤器filter中Httpresponse添加body

在拦截器中进行拦截操作时,想要给response添加body,如何操作? /** * 返回JSON数据 * @param response * @param obj * @throws Exception */ public static void responseJson(HttpServletResponse response, Object obj) throws Exception { response.setCo
原创
发布博客 2022.05.16 ·
606 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

chrome浏览器添加cookie 代理

https://chrome.google.com/webstore/detail/modheader/idgpnmonknjnojddfkpgkljpfnnfcklj?src=modheader点开以上链接,添加插件到浏览器中;根据需求,增加cookie 等,
原创
发布博客 2022.04.27 ·
477 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

位运算的相关性质和算法技巧

异或运算的“半加”特性可以理解为基于二进制的加法,但是不进位,也就是说加法溢出时丢弃进位1.异或的性质 x^0 = x且x^x = 0 交换律:x^y = y^x 结合律:(x^y)^z = x^(y^z) 自反性:x^y^y = x 2.运用异或交换两个a,b的值a = a^bb = a^ba = a^b3.异或应用的一些场景3.1A集合里拿掉数x得到B集合,求x令XOR(X)表示将X集合内所有的数做异或XOR(B)^XOR(A)..
转载
发布博客 2022.04.22 ·
880 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

mvn常用命令

强制更新项目mvn clean install -Dmaven.test.skip=true -U
原创
发布博客 2022.02.15 ·
446 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

cant start as root

错误原因root用户启动es7.4.0被拒绝,其他版本类似.es 因为安全问题拒绝使用root用户启动解决方案添加用户组es,及用户es 密码passwordgroupadd esuseradd es -g es -p password # -g 指定组 -p 指定密码chown -R es:es elasticsearch-7.4.0/ # -R : 处理指定目录下的所有文件给用户es:es添加指定目录拥有权限su escd elasticsearch-7.4.0
原创
发布博客 2022.01.29 ·
1097 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

promeTheus 接入

版本io.micrometer 1.2.1实现功能 Java接入PromeTheus,提供jvm 监控以及自定义指标监控 实现自定义指标的接入功能 实现指标label动态赋值功能代码注册MeterRegistry @Bean(value = "meterRegistryCustomizer") MeterRegistryCustomizer<MeterRegistry> meterRegistryCustomizer() {
转载
发布博客 2021.10.19 ·
1148 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

优雅代码一 Optional

在文章的开头,先说下NPE问题,NPE问题就是,我们在开发中经常碰到的NullPointerException.假设我们有两个类,他们的UML类图如下图所示在这种情况下,有如下代码user.getAddress().getProvince();这种写法,在user为null时,是有可能报NullPointerException异常的。为了解决这个问题,于是采用下面的写法if(user!=null){Addressaddress=user.getAddre...
转载
发布博客 2021.10.11 ·
218 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

AST 浅析

前言Aspect 语法难懂?ASM 字节码操作繁琐?APT 难以精准找到切入点?你该试试 AST 了!编辑器级别,效率高,更轻量。一、概念在开始上手之前,我们先了解下几个简单的概念:什么是 AST ?AST 的作用?我们知道,编程语言再怎么变,不变的是由「类型」「运算符」「流程语句」「函数」「对象」组成的本质,这些本质概念表达了底层的运算与逻辑,那么这么多编程语言,要怎么抽离出这个逻辑本质呢?答案就是:转化为统一的结构!这个统一的结构不依赖于源语言的语法,只代表源语言中...
转载
发布博客 2021.09.23 ·
1391 阅读 ·
2 点赞 ·
0 评论 ·
3 收藏

抽象语法树AST的全面解析(三)

AST操作前面两篇文章写到了抽象语法树的生成过程和语法树的节点访问,这篇文章来写一下如何操作抽象语法树。操作AST可以完成什么事情?拿到了抽象语法树,等于我们拿到了整份的代码,我们可以对所有的代码进行扫描,可以在特定的代码中写入一些逻辑:清除或者添加日志; 对象调用的非空判断; 编写我们特定的语法规则,对不符合规则的代码进行修改或优化; 增删改查。。。AST的优缺点优点:AST操作属于编译器级别,对程序运行完全没有影响,效率相对其他AOP更高;缺点:没有官方文档,操作比较复杂,
转载
发布博客 2021.09.22 ·
1226 阅读 ·
0 点赞 ·
1 评论 ·
5 收藏

抽象语法树AST的全面解析(二)

JCTree类(com.sun.tools.javac.tree.JCTree)的简要分析上一篇文章讲解了抽象语法树的来源和获取时机,接下来要分析一下抽象语法树的内部结构。抽象语法树由JCTree的内部类(如JCCompilationUnit,JCClassDecl,JCMethodDecl等)作为语法节点构成。我们可以通过调用JCTree的accept()方法来访问抽象语法树的所有语法节点。public abstract void accept(JCTree.Visitor var1);
转载
发布博客 2021.09.22 ·
940 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

抽象语法树AST的全面解析(一)

Javac编译概述将.java源文件编译成.class文件,这一步大致可以分为3个过程:1、把所有的源文件解析成语法树,输入到编译器的符号表;2、注解处理器的注解处理过程;3、分析语法树并生成字节码。javac编译过程.pngParse and Enter1.词法分析: 通过Scanner将源码的字符流解析成Token流通过词法分析器分析源文件中的所有字符,将所有的...
转载
发布博客 2021.09.22 ·
2505 阅读 ·
0 点赞 ·
0 评论 ·
7 收藏

Spring 配置文件的使用

方式一、Controller上面配置简介:讲解使用@value注解配置文件自动映射到属性和实体类1、配置文件加载方式一1、Controller上面配置@PropertySource({”classpath:resource.properties”})2、增加属性@Value(“${test.name}”)private String name;举例上篇的文件上传的地址我是写死的。这样显然不科学,这里改成写在1.application.properties配置文件里
转载
发布博客 2021.09.08 ·
296 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Java 拦截器

一、引言  既然要用拦截器,首先先得简单了解一下什么是拦截器:  概念:java里的拦截器是动态拦截Action调用的对象,它提供了一种机制可以使开发者在一个Action执行的前后执行一段代码,也可以在一个Action执行前阻止其执行,同时也提供了一种可以提取Action中可重用部分代码的方式。  作用域:动态拦截Action调用的对象(也就是我们的controller层)  我们日常开发中,经常会遇到这个场景:在访问系统功能前,需要用户登录,不登陆的话无法使用我们的系统,那么如果在每个方法
转载
发布博客 2021.09.06 ·
20313 阅读 ·
29 点赞 ·
1 评论 ·
139 收藏

一个避免消息重复消费的解决方案

我们通常会认为,消息中间件是一个可靠的组件——这里所谓的可靠是指,只要我把消息成功投递到了消息中间件,消息就不会丢。即消息肯定会至少保证消息能被消费者成功消费一次,这是消息中间件最基本的特性之一。也就是我们常说的“AT LEAST ONCE”,即消息至少会被“成功消费一遍”。一个消息 M 发送到了消息中间件,消息投递到了消费程序 A。A 接受到了消息,然后进行消费。但在消费到一半的时候程序重启了,这时候这个消息并没有标记为消费成功,这个消息还会继续投递给这个消费者,直到其消费成功了,..
转载
发布博客 2021.08.24 ·
671 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

执行mvn 命令,提示Could not find artifact xxx或Could not resolve 可能是 设置Settings文件无效

问题:公司业务拓展,新增服务项目之后,需要和原来的jar包仓库分离,这就需要idea中不同的项目配置不同的maven管理仓库;于是在不同项目的idea的maven 管理页面上,分别配置以下三项;配置完了之后,打开项目,自动导包没有问题,所有包下载完毕,也下载到了照配置的路径仓库里;(个别红的波浪线,是因为网络原因下载没有进行完全,产生以lastupted 的文件,打开包目录讲里面带有这个后缀的文件全部删掉,会重新导包)然后利用mvn 命令,就会出现标题所述的问题;我们先了解下mvn 查找sett
原创
发布博客 2021.07.07 ·
1159 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

springBoot 方法自动启动

在springBoot中我们有时候需要让项目在启动时提前加载相应的数据或者执行某个方法,那么实现提前加载的方式有哪些呢?接下来我带领大家逐个解答1.实现ServletContextAware接口并重写其setServletContext方法@ComponentpublicclassTestStartedimplementsServletContextAware{/***在填充普通bean属性之后但在初始化之前调用*类似于initializingbe...
转载
发布博客 2021.02.26 ·
667 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Redis 进阶使用(三)

一、击穿击穿,主要解决的问题就是阻止大的并发到达数据库;这之前可以利用 setnx 去构建锁;二、穿透三、雪崩
原创
发布博客 2021.02.23 ·
119 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多