自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(352)
  • 资源 (4)
  • 收藏
  • 关注

原创 dump相关

dump 相关分析

2022-08-09 13:48:03 200 1

转载 AB test

AB Test

2022-06-07 14:03:23 209

原创 java22种设计模式

Java设计模式(1)工厂模式(Factory模式) - Coda - 博客园

2022-04-28 21:49:17 724

原创 RocketMQ -Docker安装

docker search rocketmqdocker pull docker.io/rocketmqinc/rocketmq启动NameServer:docker run -d -p 9876:9876 --name rmqserver foxiswho/rocketmq:server-4.5.1启动broker:docker run -d -p 10911:10911 -p 10909:10909\ --name rmqbroker --link rmqserver:n.

2022-01-28 17:25:36 166

原创 Java GC 学习笔记

1、GC触发条件总的来说,有两个条件会触发主GC:(1)当应用程序空闲时,即没有应用线程在运行时,GC会被调用。因为GC在优先级最低的线程中进行,所以当应用忙时,GC线程就不会被调用,但以下条件除外。(2)Java堆内存不足时,GC会被调用。当应用线程在运行,并在运行过程中创建新对象,若这时内存空间不足,JVM就会强制地调用GC线程,以便回收内存用于新的分配。若GC一次之后仍不能满足内存分配的要求,JVM会再进行两次GC作进一步的尝试,若仍无法满足要求,则 JVM将报“out of memory

2021-12-29 19:43:24 165

原创 本地代码-gitlab-sonar一条龙(6)- maven插件配置

<properties> <sonar.host.url>http://localhost:9000</sonar.host.url> <sonar.login>a4f0155d575bf3c43fef34ecc061cb66a1e4781f</sonar.login> </properties> <build> <plugins> <plugin> <gr..

2021-12-21 17:38:06 405

原创 Exception总结

Java中用于处理异常的方式自行处理:可能引发异常的语句封入在try内,而处理异常的相应语句则封入catch块内回避异常:在方法声明中包含throws子句,通知潜在调用者,如果发生了异常,必须由调用者处理。在Java中除了RuntimeException及其任何子类,其他异常类都被Java的异常强制处理机制强制异常处理。关于那些被强制异常处理的代码块,必须进行异常处理,否则编译器会提示“Unhandled exception type Exception”错误警告。以下为对比:不报错...

2021-12-13 16:20:18 330

原创 Java代理CGLIB

1、前言在我的另一篇文章里讲了使用Java的动态代理CGLIB和Java动态代理的区别:Java动态代理只能够对接口进行代理,不能对普通的类进行代理(因为所有生成的代理类的父类为Proxy,Java类继承机制不允许多重继承);CGLIB能够代理普通类; Java动态代理使用Java原生的反射API进行操作,在生成类上比较高效;CGLIB使用ASM框架直接对字节码进行操作,在类的执行过程中比较高效2、实现2.1、EnhancerEnhancer是cglib中使用频率很高的一个类,它是一

2021-12-10 14:55:39 1198

原创 Java动态代理InvocationHandler、Proxy

目录1、概念2、实例1、概念java动态代理机制需要实现:InvocationHandler(接口) Proxy(类)1.InvocationHandler接口是proxy代理实例的调用处理程序实现的一个接口,每一个proxy代理实例都有一个关联的调用处理程序;在代理实例调用方法时,方法调用被编码分派到调用处理程序的invoke方法。 {@code InvocationHandler} is the interface implemented by the &

2021-11-30 14:20:45 589

原创 log4j2配置详解、自定义规则

1、配置详解配置详解上:https://www.cnblogs.com/sa-dan/p/6837225.html配置详解下:https://www.cnblogs.com/sa-dan/p/6837232.html2、自定义规则

2021-11-30 13:55:09 880

原创 maven 设置scope、optional

Maven optional关键字透彻图解 - 日拱一兵 - 博客园

2021-11-27 18:37:10 289

原创 Java正则脱敏

part1+part2实现Part1java.util.regex.Pattern的应用正则表达式的一种已编译的实现。正则表达式通常以字符串的形式出现,它首先必须被编译为Pattern类的一个实例。结果模型可以用来生成一个Matcher,它(生成的Macher实例)可以匹配根据这个正则表达式生成的任意字符序列。在实现一个匹配器中的匹配时包括了任意多的情况,并且多个匹配器可以共享同一个匹配模式。下面是一个典型的调用次序:Pattern p = Pattern.compile("a*b"

2021-11-26 15:47:03 1542

原创 logback配置详解、自定义规则

public class CusMessageConverter extends MessageConverter { @Override public String convert(ILoggingEvent event) { return enhance(super.convert(event)); } // implement your "hook ... to at least alter the message text" private String enhan.

2021-11-25 20:17:06 1752

原创 本地代码-gitlab-sonar一条龙(5)-[p3c-pmd]创建自定义规则

主要涉及三部分第一部分package com.alibaba.p3c.pmd.lang.java.rule.extend;import com.alibaba.p3c.pmd.lang.java.rule.AbstractAliRule;import net.sourceforge.pmd.lang.java.ast.ASTFormalParameters;/** * @author steven * @date 2021/11/24 */public class Me.

2021-11-24 20:45:00 461 1

原创 本地代码-gitlab-sonar一条龙(4)-[sonar-p3c-pmd]

各插件关系:下载地址:p3c-pmd:https://github.com/alibaba/p3csoanr-pmd-p3c:https://github.com/rhinoceros/sonar-p3c-pmdhttps://github.com/caowenliang/sonar-pmd-p3c(用这个)1、构建sonar-p3c plugin插件目的:在sonarqube中加入p3c的校验规则1.1、方法一构建源码地址:https://github.com..

2021-11-24 14:03:05 880 1

原创 本地代码-gitlab-sonar一条龙(3)-[p3c-pmd]

1、构建sonar-p3c plugin插件构建源码地址:https://github.com/rhinoceros/sonar-p3c-pmd/我选择的3.1.3分支,sonarque版本选的是Community Edition 版本 7.9.6PMD是啥意思

2021-11-22 20:59:57 813

原创 linux 查找文件、含文字的文件

查文件:find ./ -name "test.txt"查含文字的文件:find ./ -type f -name "*.*" | xargs grep "hello"

2021-11-22 15:17:19 1643

原创 shell 基础语法学习

1、引号使用【`】,学名叫“倒引号”, 如果被“倒引号”括起来, 表示里面需要执行的是命令。比如 `dirname $0`, 就表示需要执行 dirname $0 这个命令【“”】 , 被双引号括起来的内容, 里面 出现 $ (美元号: 表示取变量名) `(倒引号: 表示执行命令) \(转义号: 表示转义), 其余的才表示字符串。【’‘】, 被单引号括起来的内容, 里面所有的都表示串, 包括上面所说的 三个特殊字符。在命令行状态下单纯执行 $ cd `dirname ...

2021-11-22 15:03:44 112

原创 本地代码-gitlab-sonar一条龙(2)-sonar演练

目录1、安装2、 Idea安装sonalint3、idea连接sonar服务端4、实现跟远程sonar服务器规则同步4.1、远程推送4.2、修改规则后同步1、安装官网下载,直接运行,不要其他的附属步骤:登录:http://localhost:9000 默认的账号:admin/amdmin我安装的是社区版Community Edition 版本 7.9.6然后安装中文插件,打开:具体的使用手册可参考:Documentation ...

2021-11-19 16:41:15 944

原创 本地代码-gitlab-sonar一条龙(1)-gitlab 钩子介绍

目录1、简介1.1、客户端钩子1.2、服务端钩子2、客户端钩子案例3、服务端钩子案例3.1、全局配置3.2、分项目配置1、简介GitLab hooks大体上分为两类:客户端钩子和服务器端钩子,如下 先从一张图了解一下Hooks的阶段1.1、客户端钩子pre-commit钩子在键入提交信息前运行。 它用于检查即将提交的快照,例如,检查是否有所遗漏,确保测试运行,以及核查代码。 如果该钩子以非零值退出,Git 将放弃此次提交,不过你可以用 git...

2021-11-19 15:37:27 1645

原创 RocketMQ-03

1. 高级功能1.1 消息存储分布式队列因为有高可靠性的要求,所以数据要进行持久化存储。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lY1snCGb-1636376343195)(img/消息存储方式.png)]消息生成者发送消息MQ收到消息,将消息进行持久化,在存储中新增一条记录返回ACK给生产者MQ push 消息给对应的消费者,然后等待消费者返回ACK如果消息消费者在指定时间内成功返回ack,那么MQ认为消息消费成功,在存储中删除消息,即执行第6步;

2021-11-08 20:59:48 131

原创 RocketMQ-02

1. 案例介绍1.1 业务分析模拟电商网站购物场景中的【下单】和【支付】业务###1)下单[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HO34Pfst-1636376285209)(img/下单组件图.png)]用户请求订单系统下单订单系统通过RPC调用订单服务下单订单服务调用优惠券服务,扣减优惠券订单服务调用调用库存服务,校验并扣减库存订单服务调用用户服务,扣减用户余额订单服务完成确认订单###2)支付[外链图片转存失败,源站可能有防盗链机制

2021-11-08 20:58:52 90

原创 RocketMQ-01

1. MQ介绍##1.1 为什么要用MQ消息队列是一种“先进先出”的数据结构[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OwUmthXr-1636376192358)(img/queue1.png)]其应用场景主要包含以下3个方面应用解耦系统的耦合性越高,容错性就越低。以电商应用为例,用户创建订单后,如果耦合调用库存系统、物流系统、支付系统,任何一个子系统出了故障或者因为升级等原因暂时不可用,都会造成下单操作异常,影响用户使用体验。[外链图片转存失败,源站

2021-11-08 20:57:12 148

原创 Logback 实践

1、概念Logback是要与SLF4J结合起来2、简单配置<?xml version="1.0" encoding="UTF-8"?><configuration scan="true" scanPeriod="60" debug="false"> <!-- 自定义属性 --> <property name="pattern" value="%X{thread} [%date{yyyy-MM-dd HH:mm:ss.SSS}] %

2021-11-08 16:41:12 132

原创 git Reset的三种模式

Git Reset 三种模式 - 简书

2021-11-02 19:26:35 102

原创 CAT(5)-CAT告警配置

目录1、设置告警策略2、告警接收人3、回调地址1、设置告警策略2、告警接收人3、回调地址具体的告警规则详解,接口编写略

2021-10-30 18:36:48 649

原创 CAT(4)-SpringBoot过滤器和AOP集成

过滤器集成添加过滤器:多出了一些内容:点击Graph查看:AOP集成1、引入starter2、写注解3、实现注解Around代码4、加 注解即可效果:

2021-10-30 18:27:02 133

原创 CAT(3)-MyBatis集成+LogBack接入

Mybatis接入引入插件手动指定一下配置文件路径:效果查看效果LogBack接入1、自定义一个CatLogBackAppender:2、然后配置文件中,加入这个appender:3、注意要设置跟踪模式=true,否则不生效:...

2021-10-30 18:02:25 404

原创 CAT(2)-Event+Metric+报表

目录EventlogEvent​logErrorMetric报表DashboardTansactionEventProblemHeartBeatBusinessState视频:黑马程序员Java进阶教程Cat入门,美团点评链路监控平台Cat入门到精通_哔哩哔哩_bilibiliEvent提供两个APIlogEventlogError演示/logEvent效果:点【logView】查看...

2021-10-30 17:19:30 415

原创 CAT(1)-Spirngboot 集成CAT 示例代码

基础用法方法一:调用方法二:运行:现在没有异常,CAT中查看:点【LogView】看细节:注意:代码中,成功失败的status要写:扩展API实现都比较简单:效果:使用注意点:...

2021-10-30 16:25:06 84

原创 Idea 整合maven+ssi(spring+struts2+ibatis)

目录1、项目目录1、pom.xml2、web.xml3、struts.xml4、ibatis代码4.1、User4.2、UserDao4.3、UserDaoImpl4.4、UserSqlMap.xml4.5.1、涉及jdbc.properties4.5.2、涉及sqlMapConfig.xml5、service1、项目目录其中applicationContext-action.xml 可以为空,暂无啥用1、pom.xml&...

2021-10-20 17:21:11 386

原创 Idea 整合maven+ssi(spring+springmvc+ibatis)

参考:史上最详细的IDEA优雅整合Maven+SSM框架(详细思路+附带源码)_宜春-CSDN博客_ssm框架idea整合代码

2021-10-19 22:29:35 182

原创 (2)dubbo实践-dubbo高级特性

目录1、序列化2、地址缓存3、超时 4、重试5、多版本5.1、服务提供方5.2、服务调用方6、负载均衡6.1、Random6.2 其他三种7、集群容错8、服务降级1、序列化序列化目的:把对象序列化成流在生产者和消费者之间进行传输2、地址缓存3、超时怎么设置:可以写在提供方的@Service上也可以写在调用方的@Reference上​​​​​提供方:消费方:一般建议在...

2021-10-17 15:32:04 203

原创 (1)dubbo实践-快速入门

1、先建一个普通的springmvc项目2、然后对其进行改造-dubbo-service <properties> <spring.version>5.1.9.RELEASE</spring.version> <dubbo.version>2.7.4.1</dubbo.version> <zookeeper.version>4.0.0</zookeeper.ver

2021-10-17 11:48:19 217

原创 (4)Struts2-使用拦截器实现登录

1、LoginInterceptor.javapublic class LoginInterceptor implements Interceptor { @Override public void destroy() { } @Override public void init() { } @Override public String intercept(ActionInvocation actionInvocation) t

2021-10-09 12:32:15 193

原创 (3)Struts2-参数传递、Json返回、拦截器

1、参数传递入参:set出参:get代码:public class HelloAction4 implements Action { //入参 private String name; public void setName(String name) { this.name = name; } //出参 private String message; public String getMessage() .

2021-10-09 11:28:14 319

原创 (2)Struts2-基于Maven创建

1、创建maven项目2、配置tomcat如果上一步没有可选,则:上面URL改为/xyz,然后启动:http://localhost:8080/xyz/3、配置web.xml<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-ap...

2021-10-05 20:20:15 366 1

原创 (1)Struts2-Idea 2020.3 创建Struts2

1、安装插件2、创建项目官网下载lib:然后选择下载的lib(8个):再次点击File--->Project Structure,右键选择put into/Web-INF/libhttp://localhost:8080/struts1_war_exploded/

2021-10-05 11:54:22 267

原创 【管理】+【技术】

管理【构成】40人:8-12人一组 1:3:4 2:4:4:2 人员备份【成长】新成员的培训,发挥传、帮、带 老成员的提升,关注新知识,知识共享 摸清每个人的实际情况、差异化管理(从性格、能力考虑)【团队文化】杜绝死气沉沉、苦哈哈的工作模式。团建、集体运动等 团队的凝聚力,抱团(有问题大家一起面对,有难同当、有福同享) 激励机制,有冲劲的成员给他足够的空间 个别刺头,多次沟通(把握沟通方式,先私下再公开),防止“一带一路”【工作方式】统一工作模式,避免各自.

2021-08-24 14:33:46 130

原创 讲懂HBase,这就够了

参考:https://zhuanlan.zhihu.com/p/145551967?utm_source=wechat_session

2021-08-04 15:47:16 71

mystevendemo.zip

springboot demo 可以学习使用

2021-10-28

6.2.SSM框架.docx

ssm框架整合

2021-10-20

hdfs安装-全网最全,请放心下载,亲测可行

hdfs安装手册,全网最全

2021-05-26

CentOS 7 vmware 系统安装配置

详细描述了centos7在vmware下的安装和配置 欢迎大家使用,自己亲测,不参水分哦!

2019-04-22

空空如也

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

TA关注的人

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