- 博客(174)
- 收藏
- 关注
原创 如何写好日常代码以及一些常见的坑
1、方法命名潜在的坑1.1、案例伪代码示例@Datapublic class Order { private String customerName; private BigDecimal totalAmount; private String statusCode; private static final String payingStatus = "...
2023-05-09 19:44:42
390
1
原创 jdbcTemplate封装一个CRUD框架
很久没更新博文了,今天抽了1个小时空,给大家分享一个基于jdbcTemplate封装的CRUD工具API。pom.xml依赖坐标该框架用到的maven坐标如下,由于这是框架,所有的maven依赖均指定optional为true,这个代表依赖版本号以使用者项目为准,同时使用该框架的客户端项目必须重新强制依赖的方式引入这批依赖,否则编译时将会报错:<dependency> <...
2023-04-25 19:40:52
412
1
原创 Spring @Transactional注解事务六大失效场景
@Transactional事务失效场景1:注解在非public修饰的方法上。原因:Spring强制的要求。代码示例:@Transactional private void createOrder(){ }@Transactional事务失效场景2:注解在被final关键字修饰的方法上。原因:Spring的@Transactional注解事务是通过生成一个代理子类,通过重写父类...
2022-12-27 18:11:47
2290
原创 DDD领域驱动设计:贫血模型和充血模型
如何快速区分贫血模型和充血模型贫血模型和充血模型从代码实现和使用上其实很容易区分,下面通过一张简图来说明:贫血模型在实现上的特点:订单对象Order非常贫血,只承载数据属性以及属性的getter和setter方法,订单对象的行为通过创建另外一个通常称之为Service的对象来承担,属性和行为分开不同类来实现,打破面向对象思想这种做法,在MVC架构时我们再熟悉不过。充血模型在实现上的特点:订单对象O...
2022-12-20 08:55:12
730
原创 一招瞬间提升你的代码逼格
很多时候在coding过程都或多或少听到隔壁的码农兄弟在吐槽:1、这代码写的简直一坨shi...2、这是谁写的代码,我看下提交记录,写的太辣鸡了...3、我靠,还有tm这种操作的代码...4、这培训刚出来的吧,代码写的这么烂...5、这代码写的乱七八糟,根本看不懂...以上声音,只要是干了几年的码农,绝对听到过不少,问题出在哪呢?难道码农真的是因为有看不惯别人写的代码的通病吗?这个答案这里先不回答...
2022-12-09 10:09:35
344
原创 分布式消息事务最终一致性幂等框架msgtx
框架适用场景1、某个业务请求需要涉及多个子系统的分布式调用。例如订单签收需要保存签收记录、推送结算子系统、推送财务子系统、推送报表子系统、推送短信子系统。2、该业务请求接收到之后,必须处理直到成功为止,不能返回给调用者失败。例如接收到订单签收状态业务请求,订单签收这个请求就属于必须处理成功为止的,不能失败,因为客户签收订单属于已经发生的客观事实,对于系统来说必须处理直到成........................
2022-06-03 19:09:03
576
原创 一文搞定http抓包工具Fiddler
什么是fiddlerfiddler是一个强大好用的http抓包工具,它通过代理服务器的方式将http客户端(可以是浏览器,可以是安卓APP,或者苹果APP)的请求进行拦截处理,只要能够拦截到http请求,那么fiddler就可以做请求和响应报文打印、请求断点调试、等功能,更高级的用法可以通过自己编写脚本实现自动化测试平台能力,事实上fiddler功能上我们用的最多的其实还......
2022-04-23 15:16:06
6489
原创 filebeat运行过程自动退出解决办法
通过nohub方式启动filebeat,运行一段时间后filebeat自动退出,原因是filebeat默认会定期检测文件是否有新的内容,如果超过一定时间检测的文件没有任务新日志写入,那么filebeat会自动退出,解决办法就是将filebeat通过系统后台的方式长期运行。1、在linux操作系统 /etc/systemd/system目录下创建一个filebeat.service文件,写入如下内容:[Unit]Description=Filebeat is a lightweight s...
2022-04-21 14:00:12
4382
原创 MongoDB 给某个用户授权某个db权限
1、不带 --auth 参数下启动mongod服务。2、执行mongo命令,连接到mongo服务,成功进入后如下图所示:3、执行use admin命令,进入到admin数据库,如下图所示:4、创建一个超级账号:db.createUser({user:"user1",pwd:"123456",roles:[{role:"userAdminAnyDatabase",db:"admin"},{role:"readWriteAnyDatabase",db:"admin"}]})...
2022-04-20 20:38:40
5333
原创 linux磁盘扩容命令
yum install cloud-utils-growpart xfsprogs -ygrowpart /dev/vda1resize2fs /dev/vda1
2021-11-16 15:16:58
911
原创 retrying failed action with response code: 403 ({“type“=>“cluster_block_exception“, “reason“=>“block
retrying failed action with response code: 403 ({"type"=>"cluster_block_exception", "reason"=>"blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"})retrying failed action with response code: 403 ({"type"=>"cluster_block_ex...
2021-09-26 15:00:22
899
原创 try-catch-Exception真的能捕获所有异常吗?
今天跟大家分享一个平时开发用的最多的小知识点:异常捕获,相信绝大多数程序员都没注意到这个坑,首先上一段伪代码示例给大家看看:public class CatchExceptSample {...
2021-07-16 12:27:00
7801
原创 java实现在线预览图片
//关键代码如下:response.setHeader("Content-Tpe", "image/jpeg;");response.setHeader("Content-disposition", "inline;");
2021-06-09 22:08:20
1252
原创 排查生产问题,关键方法总是缺少参数日志打印?
很多时候,我们正在定位生产问题,但是往往会发现关键出入参数缺少日志打印,导致没法继续分析下去,这时我们可能第一想到的就是修改源代码,加点log,然后再重新部署,这个办法确实可以解决问题,但...
2021-05-21 18:32:00
582
原创 命令行方式批量删除Redis key
sudo /usr/local/bin/redis-cli -h localhost -p 6379 --scan --pattern 'hello_*' | xargs /usr/local/bin/redis-cli -h localhost -p 6379 DEL
2021-05-20 15:47:20
202
原创 手撕http-basic协议,从0到1手写一个http认证服务器。
简单了解HTTPHTTP是英文HyperText Transfer Protocol首字母缩写,是目前WWW万维网通讯标准协议,在属于OSI第七层(应用层)协议,要实现HTTP协议通常需要...
2021-05-17 08:30:00
557
原创 win10 安装mysql5.7
1、下载mysql5.72、解压安装包3、配置系统环境变量。4、进入解压根目录,创建data目录。5、进入解压目录,创建my.ini文件,内容如下:[mysql]default-character-set=utf8[mysqld]port = 3306basedir=D:\Software\mysql-5.7.32-winx64datadir=D:\Software\mysql-5.7.32-winx64\datamax_connections=200char
2021-04-09 11:18:46
122
原创 定时删除ES索引shell脚本
#!/bin/bash####################################################### Version: v1.0# Function: clean es log index# Author: lzy# CreateDate: 2021-03-12# Description: 定期删除ES日志索引####################################################### 执行过程日志文件...
2021-03-12 13:46:21
549
原创 Windows Kill 端口 脚本
@echo off & setlocal EnableDelayedExpansiontitle 杀死端口set /p port=请输入端口号(0~65535):set pid=0for /f "tokens=2,5" %%b in ('netstat -ano ^| findstr ":%port%"') do ( set temp=%%b for /f "usebackq delims=: tokens=1,2" %%i in (`set temp`) do (...
2021-03-12 09:05:07
522
原创 Java性能监控之操作系统层面
CPU使用率监控Java应用性能CPU方面分析时,首先分析是否充分使用了CPU,尽量做到没有丝毫浪费,一般配合CPU使用率来分析CPU是如何被消耗的。CPU使用率分为用户态使用率和系统态使...
2021-02-16 14:02:01
2373
13
原创 Kubernetes监控平台搭建
写在前面 k8s是目前最流行的容器集群管理基础组件,是当下微服务盛行的互联网时代产物。关于k8s概念、部署、实战方面可以阅读本号前面发布的文章。下面是相关链接:kubernetes架...
2020-12-30 14:22:10
1312
6
原创 Kong 中级教程
本文目录结构什么是kongKong目前的定位是一个网关组件,非常适合在现代的微服务下进行集成。尽管很多技术网友声称Kong是完全基于Nginx,但是Kong官方纠正了这一不太准确的说法...
2020-07-15 20:29:00
1515
原创 Postman 安装 太难了,怎么办?
Postman确实好用又强大,但是......为什么下载的都是木马?为什么这个谷歌下载地址我访问不了?为什么....总之对于小白来说要顺利安装Postman还是挺困难的~来,现在就给大家介绍一款超级方便安装的API-Debug插件,github地址如下:https://github.com/EhsanTang/ApiDebug进入后,点击下载:然后Chrome插件安装方式进行拖拽式安装即可!...
2020-07-14 10:31:51
873
原创 安装 Kong 网关
快速入门PostgreSQLKong可以在有或没有数据库的情况下运行,这里我们使用数据库的方式进行运行。Kong支持PostgreSQL 9.5+和Cassandra 3.xx数据...
2020-07-13 20:06:00
378
原创 elasticsearch索引模板
什么是索引模板索引模板(indices-templates)的作用的告诉es在创建某些索引时如何配置索引的约束,包括的约束有:mappings,、settings、aliases。注意,...
2020-07-09 19:56:00
1346
原创 xml文件一键生成javabean工具
说明:生成的java类是基于Jaxb标准的,带有Jaxb注解,生成的部分示例代码截图如下:1、工具目录如下:2、将需要生成的xml文件放置到该目录下,并重命名为text.xml3、然后双击click_me.bat脚本,此时脚本会提示输入包路径:4、然后回车,可以看到效果图如下:5、可以看到最终的生成的java类:获取工具方式如下:1、扫描关注微信公众号"Java软件编程之家":2...
2020-07-08 18:45:06
1498
原创 Nginx 被动健康检查和主动健康检查
被动健康检查关于Nginx的健康检查,简单的场景下可以直接使用ngx_http_upstream_module模块自带的被动式的健康检查,简单示例如下:http{#.........
2020-07-07 20:57:34
3665
原创 K8s + Docker 部署ELK日志系统
K8s + Docker 部署ELK日志系统,分布式/微服务架构下必备技能!前提:假定你已经安装并集成好docker、docker私服和k8s基础环境!部署Elasticsearch1、...
2020-07-06 18:36:00
3214
1
原创 Nginx K8s + Docker 部署 ,虚拟机部署教程。
Nginx K8s + Docker 部署 ,虚拟机部署教程!Linux 虚拟机 部署1、下载nginx:http://nginx.org/download/2、选择一个版本进行下载:...
2020-07-02 18:36:00
435
原创 如何重新引导K8s集群?
如何重新引导Kubernetes集群在引导k8s集群的过程时可能因为这个或那个的原因导致需要重新引导集群,先假定以下的步骤在前面你已经做好了:系统内核设置k8s涉及的镜像已经拉取成功网络...
2020-06-29 12:30:00
1280
原创 kubernetes 将容器指定到某些节点运行
假定部署的kubernetes集群有5个节点,一个master节点和4个work节点,默认master节点不调度Pod,所有Pod均在4个work节点上调度Pod。简单列表如下:host...
2020-06-22 13:00:00
4642
原创 MongoDB Linux 安装
安装wgetyum install -y wget创建目录mkdir -p /opt/soft /opt/tarball /opt/src安装mongo#创建mongo data、...
2020-06-19 19:03:18
148
原创 kubernetes 命名空间容器配额限制
创建命名空间:kubectl create namespace my-namespace需要配置的资源限制:配置容器默认内存限制配置容器默认CPU限制配置命名空间容器总内存和CPU限制...
2020-06-17 18:18:00
1000
原创 Activiti工作流基础知识
Activiti是一个成熟的开源工作流引擎框架,它不仅仅适用于审批方面的业务,实际上任何跟流程相关的业务场景都可以引入Activiti框架。本章首先从简介开始逐步介绍Activiti工作...
2020-06-08 18:52:55
1329
原创 Memcache Linux 安装
安装wgetyum install -y wget创建目录mkdir -p /opt/soft /opt/tarball /opt/src安装C语言编译器yum install -y gcc gcc-c++安装memcache依赖libeventcd /opt/tarballwget http://www.monkey.org/~provos/libevent-2.0.10-stable.tar.gztar -xvf libevent-2.0.10...
2020-06-02 16:33:39
97
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人