自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 资源 (1)
  • 收藏
  • 关注

原创 Linux查看防火墙状态及开启关闭命令

1)查看防火墙状态:[root@centos6 ~]# service iptables status未开启状态如图2)开启防火墙:[root@centos6 ~]# service iptables start3)关闭防火墙:[root@centos6 ~]# service iptables stop4)重启防火墙:[root@centos6 ~]# service iptables restart5)永久关闭防火墙:[root@centos6 ~]# chkconfig iptab

2024-05-22 15:58:21 2437 1

原创 Linux-挂盘-分区-卸盘

注释掉之前的开机自动挂载。

2024-05-22 15:54:25 647

原创 Prometheus

1、下载 jmx_prometheus_javaagent-0.20.0.jar并上传到 api-server的规划目录下(我们的服务api-server和core-server是部署在192.168.52.198上,所以将jmx_prometheus_javaagent-0.20.0.jar上传到 /opt/fs/jmx 下)官网: https://prometheus.io/docs/prometheus/latest/getting_started/

2024-01-03 10:06:14 1398

原创 Grafan-Loki

Loki是一个受普罗米修斯启发的水平可扩展、高可用的多租户日志聚合系统。洛基与普罗米修斯的不同之处在于,他专注于日志而非度量,并通过推送而非拉取来收集日志。

2023-12-22 14:17:23 396

原创 17 - common-pdf 工具包

common-pdf概述java导出数据的方式有很多种,这边大概做一个总结 :Itext,wkhtmltopdf,Spire.Doc,Flying Sauser,PD4ML,x-easypdf,目前使用量最多的就是Itext(Itext5 和 Itext7),Itext7也有一个高级的模块html2pdf能快速实现功能,后端的代码量最少。 wkhtmltopdf,Spire.Doc,Flying Sauser,PD4ML 可以参考:https://blog.csdn.net/weixin_43981

2023-12-13 18:36:32 647

原创 16 - component-excel组件的封装与集成

component-excel组件的封装概述所有的操作是基于 easyExcel的封装, easyExcel是一个很完美的框架了,我的封装只是为了更方便业务上的复用。其他文字上的描述话不多说。官网很详细的官网 :https://easyexcel.opensource.alibaba.com/docs/current/quickstart/readhttps://github.com/alibaba/easyexcel/blob/master/easyexcel-test/src/test/j

2023-12-09 12:13:25 665

原创 15 - 统一参数检验-异常处理-结果集封装-XSS攻击-screw-smart-doc

*** 自定义注解Class

2023-12-05 18:16:21 380

原创 14 - component-security-jwt组件的封装与集成

component-security-jwt组件的封装场景需求必要性: 任何一个产品(软件系统),在使用时所面对的用户是有级别的,比如在一个公司中会有老板,领导,员工,在同一个公司每个级别的员工用同一个系统所能对这个系统的操作是不同的,系统中的核心,保密的操作只能高级别的员工才能操作,这就要求了这个软件系统需要有权限控制。就是不同级别的员工登入系统中所能看到的菜单,按钮是不同的。场景考量 : 对于开发者而言,其实大部分涉及权限的系统的技术实现都是大同小异的,我在想我能否封装一个组件,把它做成一个通用的

2023-11-27 23:43:06 438

原创 13 - Elastic-Job 集成与部分源码

默认实现 CPUUsageJobExecutorServiceHandler/***/@Override@Override参考 CPUUsageJobExecutorServiceHandler 实现一个我们自己的import org/**return 1;} /*** 就是一个标识,AbstractJobExecutorServiceHandler实现类的标识,* 当前我们是ElasticJobThreadPool,就是标识我们这个自定义实现类的。

2023-11-17 16:54:10 37

原创 12 - component-rabbitmq-starter组件封装与集成

component-rabbitmq-starter组件封装Rabbitmq :基本上所有的mq的功能都是差不多的,都是为了解决应用解耦,异步处理,流量削峰,等,基本的概念不介绍,其实原有的spring-boot-starter-amqp已经封装的很好了,但是为了项目的需要(统一交换机,队列等后缀,通统一消息体,自定义traceId,方便操作,等等)也是基于spring-boot-starter-amqp 做了进一步的封装。组件类包结构│ component-rabbitmq-starter│

2023-11-16 12:51:32 92

原创 11 - component-websocket-starter组件封装与集成

component-websocket-starter组件封装组件概述component-websocket-starter 组件是对 spring-boot-starter-websocket stater的封装,为实现后端资源(后端数据)发生变化后需要及时推送给页面更新显示。如进度信息(前端页面的进度条,安装进度,恢复进度等等)组件名词概述view: 视图,所对应的就是前端页面窗口,一个视图和 websocket session是 一 一 对应的,前端页面打开一个页面(view)建立起一个web

2023-11-12 19:52:01 58

原创 10 - component-log-starter组件封装与集成

component-log-starter组件封装功能概述component-log-starter组件 通过自定义AOP集成了线程池,MDC, 异常Wrapper等一些列的功能,在业务的接口或者实现方法上加上@LogRecord注解即可实现对该方法的入参,出参,useCase,traceId的异步输出以及方法处理后的回调等。省去在开发的过程中开发人员在每个业务方法中添加打印日志。组件类包结构component-log-starter│ pom.xml│ README.md│ 日志拦截_

2023-11-12 17:11:19 43

原创 9 - component-exception组件的封装与集成

小结 : 方式二明显更优化,方式一代码量更大,其次有魔法值,如果多个地方有非空判断就不好维护了,方式一统一在枚举类中维护,修改方便,其原理实现是,在HeroEnumException枚举类中实现了AssertService这个断言处理接口并重写了获取异常code和异常参数的方法,AssertService封装了共同的常用校验方法,通过。异常枚举值的异常码和描述然后抛出异常。

2023-11-08 23:25:16 84

原创 8 -扩展组件component-extension-starter组件的封装和集成

component-extension-starter组件的封装扩展组件其实是利用spring的扩展对策略模式的一种封装,方便处理项目中各种同一业务下有不同实现逻辑优化。减少模块间的依赖和去除代码中大量使用if else。具体的使用场景可以接下下面的集成案列。原理描述定义了一个扩展点接口ExtensionPointInterface,便于具体中业务接口继承,从而标识业务接口定义了一个注解@Extension用于修饰具体的业务实现接口类,@Extension接收业务标识,用例,具体的使用场景(就是一

2023-11-08 17:56:44 93

原创 7- component-threadpool 组件封装和集成

component-threadpool组件封装场景需求先简单过一下Thread Local 和InheritableThreadLocal以及TransmittableThreadLocalThreadLocal是Java提供的一个类,主要用于解决多线程访问同一个共享变量时出现的并发问题。它提供了线程的私有变量,每个线程都可以通过set()和get()方法对这个私有变量进行操作,且不会和其他线程的私有变量产生冲突。而ThreadLocal的弊端就是不能实现父子线程的数据共享,就是我希望在父线程中开辟

2023-11-07 18:43:07 57

原创 6 - redis conponent-redis-start 组件封装和集成

component-redis-start 组件封装组件功能介绍component-redis-start 是对 spring-boot-starter-data-redis 结合自身业务的进一步的封装,主要包含了:redis 缓存,redis锁,redis订阅发布功能,支持多redis数据源,可以配置多个redis数据源,根据yml配置的redis的redisDataSourceName与redisTemplate的bean name绑定从而实现注入redisTemplate的Bean name

2023-11-05 20:28:36 71

原创 5 - 集成Mariadb,数据库链接加密,读写分离

集成Mariadb数据库代码生成工具数据库的安装注意数据库的版本是 10.6.8,springboot 是 2.6.8 数据库的驱动是 8.0.29[root@localhost mariadb]# docker run -d -p 3306:3306 --privileged=true -v /fs/docker/mariadb/3306/log:/var/log/mysql -v /fs/docker/mariadb/3306/data:/var/lib/mysql -v /fs/docke

2023-11-03 16:35:56 56

原创 4 - Mariadb、Redis、Rabbitmq搭建

安装完成后如果无法访问rabbitmq管理页面,则查看对应的端口 5672,15672 的端口有无开放,如果没有开放端口,或者关闭防火墙后需要重启docker(systemctl restart docker) 服务才能生效。重启docker 在重启容器。将下载好的rabbitmq_delayed_message_exchange-3.9.0.ez插件上传至宿主机,然后通过docker的cp命令将插件cprabbitmq容器的内部的plugins目录下,并执行安装。

2023-10-31 17:13:00 39

原创 3 - gRPC 组件封装和gRPC集成springboot

gRPC 组件common-protobuf 模块是用于放置 proto 文件,和基于 proto 文件生成对应的 java代码的组件,该模块中包含两个组件 external-protobuf , internal-protobuf 和一个协议文件 proto (将所有的协议文件都放在此包下),当前 common-protobuf 模块引用 web-bom 模块,web-bom 提供了两个子模块,grpc-bom(管理了所有grpc使用到的依赖版本) 和 spring-boot-bom (管理了所有spr

2023-10-31 16:37:53 97

原创 2 - 封装DTO和Util组件

Common-component 组件父工程会在 Common-component下封装所有的组件,供aip-server,Core-Server 还是以后自己的项目中使用,目前规划的工程包括如下:├─common-component 组件的父工程│ ├─common-dto dto 组件,会封装 Page,Request,Response 等│ │ └─src│ │ └─main│ │ └─java│ │ └

2023-10-30 22:48:22 63

原创 1 - 项目搭建与简介

api-server, common-component ,common-protobuf ,core-server,web-bom 都是平级的根模块,每个模块块所负责的主要功能不同,并且各自的模块也有自己的子模块进一步明确其功能。├─trunk├─api-server api-server父工程,统一管理了 api 前缀的子模块版本,对外提供api访问│ ├─api-server-adapter 适配层(rest-controller,依赖 facade层)

2023-10-22 00:19:49 44

原创 Design Pattern 02

设计模式

2023-02-25 18:02:59 265

原创 Design Pattern 01

java设计模式上

2023-02-19 23:51:07 257

原创 noVNC搭建

noVNC 的搭建过程

2022-12-28 17:30:04 2639 1

原创 MariaDB

当前示列的环境是:centos 7.5 ,MariaDB 10.6.8所有的安装操作路径都是基于 opt/fs/mdb创建对应的包在/opt/fs/mdb目录下创建multiMysql文件夹,并在里面创建mdbConfig,socket,mdebBin,datadir这四个文件夹备用。现在我们在datadir中创建3个文件夹以放置三个实例的数据文件:3307,3308,3309查看建立好的文件tree提前给文件授权要对/opt/fs/mdb/multiMysql进行递归授权防止之后的操作出现

2022-06-02 20:14:29 592

原创 encriytion-mysql连接加密

jasypt-spring-boot官网:https://github.com/ulisesbocchio/jasypt-spring-boot中文 https://www.5axxw.com/wiki/content/3cyz9l集成步骤导入依赖 <dependency> <groupId>com.github.ulisesbocchio</groupId> <artifactId&g

2022-05-16 18:50:47 576

原创 谷粒商城-00-索引目录

01、简介-项目介绍02、简介-项目整体效果展示03、简介-分布式基础概念04、简介-项目微服务架构图05、简介-项目微服务划分图06、环境-使用vagrant快速创建linux虚拟机07、环境-虚拟机网络设置08、环境-linux安装docker09、环境-配置docker阿里云镜像加速10、环境-docker安装mysql11、环境-docker安装redis12、环境-开发工具8环境安装配置13、环境-配置git-ssh14、环境-项目结构创建&提交到码云15、环境

2022-05-14 11:43:41 531

原创 谷粒商城-12-p300-p338

300、商城业务-支付-支付宝沙箱&代码1、进入“蚂蚁金服开放平台” https://open.alipay.com/platform/home.htm2、下载支付宝官方demo,进行配置和测试文档地址https://open.alipay.com/platform/home.htm 支付宝&蚂蚁金服开发者平台https://docs.open.alipay.com/catalog 开发者文档https://docs.open.alipay.com/270/106291/ 全部

2022-05-13 22:59:50 2895 2

原创 谷粒商城-11-p248-p299

247、商城业务-消息队列-MQ简介1、概述Message Queue 简称 MQMQ全称为Message Queue,消息队列是应用程序和应用程序之间的通信方法。多用于分布式系统之间进行通信。先进先出:MQ先进后出:栈两边都可以取数据:双端队列2、应用场景2.1 异步处理2.2 应用解耦2.3 流量控制2、概述大多应用中,可通过消息服务中间件来提升系统异步通信、扩展解耦能力消息服务中两个重要概念:消息代理(message broker)和目的地(dest

2022-05-13 22:58:53 657

原创 谷粒商城-10-p193-p247

193、商城业务-异步-异步复习线程基础百度吧异步编排参考网上链接即可:https://blog.csdn.net/weixin_45762031/article/details/103519459线程回顾初始化线程的4种方式:1、继承Thread2、实现Runnable接口3、实现Callable接口 + FutureTask (可以拿到返回结果,可以处理异常)4、线程池方式1和方式2:主进程无法获取线程的运算结果。不适合当前场景方式3:主进程可以获取线程的运算结果,并设置给ite

2022-05-13 22:56:48 4928

原创 谷粒商城-09-p173-p192

173、商城业务-检索服务-搭建页面环境接下来我们要在我们的search 服务搭建我们的检索服务1、引入thymeleaf 依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </depende

2022-05-13 22:54:20 2385

原创 谷粒商城-08-p139-p172

139、商城业务-nginx-搭建域名访问一(反向代理)1、安装nginx随便启动一个 nginx 实例,只是为了复制出配置docker run -p 80:80 --name nginx -d nginx:1.10将容器内的配置文件拷贝到当前目录:docker container cp nginx:/etc/nginx .别忘了后面的点修改文件名称:mv nginx conf 把这个 conf 移动到/mydata/nginx 下终止原容器:docker

2022-05-13 22:53:32 1766

原创 谷粒商城-07-p102-p138

102 全文检索-ElasticSearch-简介简介https://www.elastic.co/cn/what-is/elasticsearch全文搜索属于最常见的需求,开源的 Elasticsearch 是目前全文搜索引擎的首选。它可以快速地储存、搜索和分析海量数据。维基百科、Stack Overflow、Github 都采用它Elastic 的底层是开源库 Lucene。但是,你没法直接用 Lucene,必须自己写代码去调用它的 接口。Elastic 是 Lucene 的封装,提供了 REST

2022-05-13 22:52:32 1892

原创 谷粒商城-06-p65-p101

65、商品服务-api-品牌管理-表单校验&自定义校验器1、新增品牌和修改品牌的回显brand.vue <el-table-column prop="logo" header-align="center" align="center" label="品牌logo地址"> <template slot-scope="scope"> <!-- <el-image style="width: 10

2022-05-11 09:57:03 971

原创 谷粒商城-04-P44-P60

商品服务-api-三级分类-递归查询树形数据结构获取1、导入数据向数据库gulimall_pms中的表pms_category导入数据,脚本如下:DROP TABLE IF EXISTS `pms_category`;CREATE TABLE `pms_category` ( `cat_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '分类id', `name` char(50) DEFAULT NULL COMMENT '分类名称', `

2022-05-11 09:55:15 616

原创 谷粒商城-01-p1-p19

谷粒商城-01分布式基础&环境搭建一、项目简介1、项目背景1)、电商模式市面上有 5 种常见的电商模式 B2B、B2C、C2B、C2C、O2O;1、B2B 模式B2B (Business to Business), 是指商家与商家建立的商业关系。 如:阿里巴巴2、B2C 模式B2C (Business to Consumer), 就是我们经常看到的供应商直接把商品卖给用户,即“商对客”模式,也就是通常说的商业零售,直接面向消费者销售产品和服务。如:苏宁易购、京东、天猫、小米商城

2022-05-08 20:23:12 2426

原创 谷粒商城-03-p28-p44

以下的前端技术点更详细的可以查看放生的 csdn 的系列https://blog.csdn.net/weixin_45041878/article/details/123560368一、 VSCode 使用1 、安装常用插件切换到插件标签页安装以下基本插件2 、创建项目vscode 很轻量级,本身没有新建项目的选项,创建一个空文件夹就可以当做一个项目3 、创建网页创建文件,命名为 index.html快捷键 ! ,快速创建网页模板h1 + 回车,自动补全标签4 、运行效果如

2022-05-08 20:16:55 359

原创 谷粒商城-02-p20-p27

一、SpringCloud Alibaba1、SpringCloud Alibaba 简介1)、简介Spring Cloud Alibaba 致力于提供微服务开发的****一站式解决方案。此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里微服务解决方案,通过阿里中间件来迅速搭建分布式应用系

2022-05-08 20:14:13 803

原创 WebSocket

java websocket

2022-04-13 12:45:29 3456 2

原创 java 国际化 i18n

java 国际化,i18n

2022-04-05 18:48:14 4411

谷粒商城项目技术选型 和 搭建

项目简介 技术选型 搭建 docker git 对应视频 p1-p19

2022-05-08

空空如也

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

TA关注的人

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