![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 66
zengliangxi
一个充满理想的人
展开
-
TLOG日志框架springboot项目集成与扩展
TLog是一个轻量级的分布式日志标记追踪神器,10分钟即可接入,在我使用的时候,有些不足,所以我自己进行了个性化定制,现在已经在项目中使用。原创 2023-03-16 16:08:57 · 1774 阅读 · 3 评论 -
RPC框架组件openFeign原理解析
OpenFeign是是一个基于Http协议的RPC组件1.如果你以前在工作中经常碰到feign调不通,日志还看不出什么原因2.如果你不知道怎么扩展服务与服务之间的调用feign,服务间的接口签名等3.如果你发现服务与服务间的断路器不起作用,还找不到原因原创 2023-03-13 16:21:12 · 1679 阅读 · 0 评论 -
工作实战之大文件上传minio
大文件上传,要解决的问题:1.文件太大,请求限制,2.文件太大,耗时太久,连接超时 3.断点续传解决方案:采用分片的方式进行上传前端用百度开源的WebUploader进行分片异步上传后端用minio的putObject上传,composeObject合并,完成大文件的上传原创 2023-03-10 19:16:46 · 5639 阅读 · 10 评论 -
工作实战之拦截器模式
拦截过滤器模式,简称拦截器模式,是责任链模式的一种衍生模式。用于对业务程序做一些预处理/后处理原创 2023-03-07 16:42:24 · 718 阅读 · 0 评论 -
工作实战之代码规范
软件质量的好坏,不仅取决于团队成员的编程能力,更取决于整个项目的代码规范,代码规范包括java代码规范,数据库规范,设计规约等原创 2023-03-03 14:43:56 · 466 阅读 · 0 评论 -
工作实战之密码防重放攻击
密码重放攻击:请求被攻击者获取,并重新发送给认证服务器,从而达到认证通过的目的的方式原创 2023-03-01 18:07:20 · 905 阅读 · 0 评论 -
工作实战之xss攻击防范
跨站脚本攻击(全称Cross Site Scripting,简称为XSS)是指恶意攻击者在Web页面中插入恶意javascript代码(也可能包含html代码),当用户浏览网页之时,嵌入其中Web里面的javascript代码会被执行,从而达到恶意攻击用户的目的,知其原理才能知道解决方法,但是如果过滤不全,也可能被绕过。原创 2023-02-24 11:05:08 · 1099 阅读 · 0 评论 -
工作实战之系统交互api调用认证设计
系统间接口调用,接口文档及实现,包括api认证授权,包括参数sha256加盐哈希,sign,md5签名,各种手段保证接口调用的安全性原创 2023-02-23 15:26:33 · 654 阅读 · 0 评论 -
xxl-job源码解读(执行器注册调度器)
a.ExecutorRegistryThread,内部启动一个线程registryThread。2.toStop在程序关闭的时候,注销注册的执行器,以免后续调度器调用无效执行器。b.服务端,接收到http请求,将注册信息,存入到数据库,供后面,调度器调度。1.setDaemon(ture)为守护线程,程序关闭不受影响。原创 2022-09-16 18:02:17 · 1123 阅读 · 0 评论 -
分布式事务原理源码分析(seata)
zh一.TM-RM-TC工作流程图二.详细流程分析1.GlobalTransactionScanner a.TM注册,RM注册,这一步,可以个性化TC的认证,不是所有TM和RM都能注册上来,如果你要做一个类似GTS的分布式事务服务 private void initClient() { if (LOGGER.isInfoEnabled()) { LOGGER.info("Initializing Global Transaction C...原创 2022-05-26 12:46:33 · 660 阅读 · 0 评论 -
springboot 自定义starter redis acl控制
springboot集成jedis,完成redis acl功能使用原创 2022-02-08 17:02:13 · 1211 阅读 · 2 评论 -
脱敏组件start
一.文章结构1.敏感数据页面上部分显示,可以基于web拦截器返回前端前做修改,也可以基于mybatis拦截器在查询出来后做修改2.项目集成(开箱即用,maven引入,返回类上加注解)3.项目demo测试4.实现原理剖析(自定义注解,mybaits拦截器使用,java反射的使用)5.源码下载二.项目集成1.maven引入<dependency> <groupId>com.zenglx.assembly</groupId&g原创 2021-08-24 20:44:11 · 266 阅读 · 0 评论 -
分布式页面防重复提交组件start
一.文章结构1.页面防重复提交实现方式(按钮置灰治标不治本,主键判断高并发下失效,基于redis单线程实现)2.项目集成(开箱即用,maven引入,方法加注解)3.多线程快速点击结果展示4.实现原理剖析(自定义注解,spring的aop拦截,redis的setNx的使用)5.源码地址下载二.防重复提交组件集成1.maven引入 <dependency> <groupId>com.zenglx.assembly</gr原创 2021-08-23 14:42:49 · 172 阅读 · 0 评论 -
分布式递增序列实现组件starter
一.实现方式1.基于redis实现的递增序列2.基于数据存储过程实现的递增序列3.基于数据库乐观锁实现的递增序列二.测试结果展示1.基于redis实现分布式递增序列a.测试代码package com.zenglx.demo;import com.zenglx.assembly.increasingSequence.api.SequenceGeneratorApi;import org.springframework.beans.factory.annotation.Aut原创 2021-08-21 18:00:33 · 303 阅读 · 0 评论 -
spring zuul上传大文件处理
上传大文件经过zuul网关,包head space内存溢出处理方式有两种1.在application.yml配置中增加file-size-threshold: 20MBspring: application: name: zuul-gateway servlet: #spring boot2.0之前是http multipart: enable...原创 2020-03-16 17:11:52 · 2505 阅读 · 0 评论 -
spring 工具 StopWatch 调试性能问题
/* * Inc. * Copyright (c) 2000-2019 All Rights Reserved. */package com.aspire.zenglx.project.util;import org.springframework.util.StopWatch;/** * @author zengliangxi * @version $id:StopWat...原创 2019-11-21 16:56:11 · 427 阅读 · 0 评论 -
springboot项目配置文件密码 密文
1.maven依赖<dependency> <groupId>com.github.ulisesbocchio</groupId> <artifactId>jasypt-spring-boot-starter</artifactId> <version>2.1.1</version>...原创 2019-11-21 16:43:01 · 1174 阅读 · 0 评论 -
springboot2.0与百度开源分布式id生成器UidGennerator集成
UidGenerator 由百度开发,是Java实现的, 基于 Snowflake算法的唯一ID生成器。UidGenerator以组件形式工作在应用项目中, 支持自定义workerId位数和初始化策略, 从而适用于 docker等虚拟化环境下实例自动重启、漂移等场景下面来看怎么在项目中集成:代码结构如下图1.https://github.com/baidu/uid-generato...原创 2019-07-27 14:24:06 · 1241 阅读 · 1 评论 -
javaweb Filter在工作中的简单应用[从学习到工作(三)]
1.Filter对乱码问题的处理 web中的配置原创 2014-06-24 19:39:37 · 404 阅读 · 0 评论 -
java线程池和数据库连接池[从学习到工作(二)]
背景:前段时间工作需要开发一个socket服务端,x原创 2014-06-23 21:07:16 · 1167 阅读 · 0 评论 -
javaweb监听器记录应用的在线人数[从学习到工作(四)]
1.web.xml的配置原创 2014-06-25 22:35:41 · 516 阅读 · 0 评论 -
jsp自定义标签的学习[从学习到工作(五)]
在现在的开发平台上发现有自己定义的标签,yue原创 2014-06-26 21:10:54 · 432 阅读 · 0 评论 -
javaweb 简单的文件上传动态添加上传文件数量[从学习到工作(六)]
1.jsp页面主要代码块 upload" method="post" enctype="multipart/form-data"> File: $(function() { $('#add').click(function() { var random = Math.random()*10原创 2014-06-30 21:27:51 · 608 阅读 · 0 评论 -
spring boot 集成webservice axis(1) eclipse axis插件安装
1.下载eclipse的axis插件 下载地址axis客户端插件,axis服务端插件2.下载完成 解压3.放入eclipse的plugin目录,我的是\sts\sts-3.8.4.RELEASE\plugins4.重启eclipse,右击项目,点击新建other出现下面场景即为安装成功spring boot 集成webservice axis(2) axis由wsdl或者xml生成客户端代码...原创 2018-04-29 07:55:32 · 2704 阅读 · 0 评论 -
spring boot 集成webservice axis(2) axis由wsdl或者xml生成客户端代码
1.点击项目右键新增other如下图2.选择3.选择wsdl文件4.选择代码生成的位置5.在pom.xml中引入axis依赖或者在普通项目中引入jar包spring boot 集成webservice axis(1) eclipse axis插件安装spring boot 集成webservice axis(3) axis集成到项目...原创 2018-04-29 08:18:01 · 13661 阅读 · 0 评论 -
spring boot 集成webservice axis(3) axis集成到项目
1.在第二章这是axis生成的客户端代码2.程序中调用spring boot 集成webservice axis(2) axis由wsdl或者xml生成客户端代码原创 2018-04-29 08:22:48 · 6985 阅读 · 1 评论 -
Elasticsearch 在项目中的实战(大纲)
1.下载安装elasticsearch2.下载安装elasticsearch-head插件,图形化界面操作3.将原有项目数据库数据和ES库连接同步,此处用到工具elasticsearch-jdbc4.将查询或操作的数据源切换到ES库...原创 2018-05-28 10:57:07 · 2392 阅读 · 3 评论 -
Elasticsearch 在项目中的实战(一)
1.下载安装elasticsearch ES下载地址2.在linux环境中解压 文件 unzip elasticsearch-5.5.2.zip3.打开ES所在目录,修改$ES_HOME/config/elasticsearch.yml, 找到network.host:字样,将后面的IP修改为服务器的内网IP:# ---------------------------------- Netwo...原创 2018-05-28 11:13:04 · 2787 阅读 · 0 评论 -
Elasticsearch 在项目中的实战(三)
.1 安装数据库同步程序将原有项目数据库数据和ES库连接同步,此处用到工具elasticsearch-jdbc1.安装数据库同步服务 elasticsearch-jdbc将elasticsearch-jdbc-2.3.4.1.zip解压到/opt/aspire/product/search/(解压指令unzip)解压考指令(不包含端口修改等操作):cd /opt/aspire/product/s...原创 2018-05-28 13:50:10 · 1976 阅读 · 0 评论 -
数据权限控制
界面用户通过浏览器访问系统,传递查询参数 查询参数经过控制层,aop组件对参数进行拦截,读取redis缓存中的数据权限数据,进而对参数进行重新组装。 从新组装的查询参数传递到业务处理层。 业务处理层将查询参数传递到数据访问层。 Sql分析组装组件对查询sql和查询参数进行从新拼接。 从新拼接的sql对数据进行查询。 新的查询sql查询出来的数据从数据库到数据访问层。 数据权限过滤的数...原创 2018-08-28 10:18:01 · 4127 阅读 · 0 评论 -
linux 应用启动脚本
LOG_FILE=/start/jenkins.log #需要修改 1.启动日志文件APP_NAME=jenkins #需要修改 2.应用名称pid=`ps -ef | grep $APP_NAME | grep -v grep | tr -s " "|cut -d" " -f2 `start(){ if [ -n "$pid" ];then echo -e "$APP_N...原创 2018-11-30 14:19:00 · 518 阅读 · 0 评论 -
VMware Workstation 12 Pro 本机与虚拟机连接设置
1.设置网络连接 2.配置虚拟网络3.设置本机ip4.将虚拟机ip设置为原创 2018-11-28 09:39:40 · 1044 阅读 · 0 评论 -
java实现oracle 快速卸载数据并ftp上传数据给各个其他业务系统[从学习到工作(一)]
1.java卸载数据原创 2014-06-16 11:42:51 · 996 阅读 · 0 评论