知识点
穿着红色卫衣的程序猿
IT小白
展开
-
spring微服务------------分布式事务-------------Seata AT事务方案
一、 业务场景(订单系统)订单系统保存订单订单系统调用库存服务,减少商品库存订单系统调用账户服务,扣减用户金额二、Seata AT基本原理Seata AT 事务分两个阶段来管理全局事务:第一阶段: 执行各分支事务第二阶段: 控制全局事务最终提交或回滚1. 第一阶段:执行各分支事务(1. 事务协调器:协调各个服务的运行状态。这个服务称为 TC(Transaction Coordinator)。(2. 订单系统开始执行,保存订单之前,首先启动 TM(Transaction Mana原创 2021-09-26 10:11:08 · 160 阅读 · 0 评论 -
RabbitMQ安装
一、将下载好的docker-install上传到 /root 目录二、直接拉去下载docker pull rabbitmq:management三、关闭防火墙,重新起dockersystemctl stop firewalldsystemctl disable firewalldsystemctl restart docker四、创建文件夹,配置用户密码mkdir /etc/rabbitmqvim /etc/rabbitmq/rabbitmq.confdefault_user = a原创 2021-09-18 02:34:40 · 142 阅读 · 0 评论 -
Docker安装
一、将下载的文件放入服务器的 /root/docker-install 文件夹下:[docker-install]- docker-20.10.6.tgz- install.sh- docker.bash二、继续执行# 进入 docker-install 文件夹cd docker-install# 为 docker-install 添加执行权限chmod +x install.sh# 安装./install.sh -f docker-20.10.6.tgz三、镜像加速原创 2021-09-18 02:12:47 · 174 阅读 · 0 评论 -
SpringBoot_____之____AOP应用实践
需求:基于OCP(开闭原则-对扩展开放对修改关闭)设计原则对功能进行扩展基于继承方式实现功能扩展,代码简单,容器理解,但是不够灵活,耦合性比较强。基于组合方式实现功能扩展,代码比较灵活,耦合低,稳定性强,但理解相对比较困难,代码繁琐。一. AOP简介AOP(Aspect Orient Programming)是一种设计思想,是软件设计领域中的面向切面编程,它是面向对象编程(OOP)的一种补充和完善。二. 实现原理AOP可以在系统启动时为目标类型创建子类或兄弟类型对象,这样的对象我们通常.原创 2021-08-31 19:59:16 · 107 阅读 · 0 评论 -
全局异常处理和全局过滤器处理
一. 全局异常处理Spring框架中web模块定义了一套全局异常处理规范,基于这个套规范处理Controller中抛出的异常package com.jt.advice;/** @RestControllerAdvice 注解描述的类为全局异常处理类,启动时会交给spring管理*/@RestControllerAdvicepublic class GlobalExceptionHandler { private static final Logger log=LoggerFact原创 2021-08-28 11:29:16 · 692 阅读 · 0 评论 -
微服务架构Sentinel,限流,熔断(降级),异常重写
一. Sentinel概述是一个流量控制平台,它以流量为切入点, 从流量控制、熔断降级、系统负载保护等多个维度来保护服务的稳定性。二. 使用流程1. 安装(https://github.com/alibaba/Sentinel/releases),下载jar包2. 在sentinel对应目录,打开命令行(cmd),启动运行sentineljava -Dserver.port=8180 -Dcsp.sentinel.dashboard.server=localhost:8180 -Dproject.原创 2021-08-20 19:53:27 · 735 阅读 · 0 评论 -
微服务Nacos\LoadBalancerClient\R
一. 先要一个服务的管理平台Nacos(注册,发现,配置)1.解压nacos或下载(https://github.com/alibaba/nacos/releases)(版本1.4.1)2.在数据库执行config文件中nacos-mysql.sql脚本(脚本可能不带创建库)3.打开/conf/application.properties文件,配置数据源和数据库4.windows打开Nacosstartup.cmd -m standalone(要么bin目录cmd,要么配置环境变量)5.local原创 2021-08-19 20:44:47 · 1029 阅读 · 1 评论 -
上传文件照片后端详情
package com.jt.service;import com.jt.vo.ImageVO;import org.springframework.stereotype.Service;import org.springframework.web.multipart.MultipartFile;import javax.imageio.ImageIO;import java.awt.image.BufferedImage;import java.io.File;import java.i原创 2021-08-10 18:47:17 · 74 阅读 · 0 评论 -
查询三级目录和删除三级目录业务后端详情
package com.jt.service;import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.jt.mapper.ItemCatMapper;import com.jt.pojo.ItemCat;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotyp原创 2021-08-10 18:45:26 · 644 阅读 · 0 评论 -
商品入库同时操作两个表MP自动id回显,Mybatis需要useGeneratedKeys
package com.jt.service;import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.baomidou.mybatisplus.extension.plugins.pagination.Page;import com.jt.mapper.ItemDescMapper;import com.jt.mapper.ItemMapper;import com.jt.pojo.Item;i原创 2021-08-10 18:42:46 · 255 阅读 · 1 评论 -
Vue脚手架搭建和创建Vue项目
一、搭建Vue环境1)验证nodejs是否安装好在选中的文件中,输入cmd进入命令框进行验证node -v2)把npm换到国外中央仓库,换镜像:阿里淘宝nodejs中含有npm,输入以下代码npm config set registry https://registry.npm.taobao.org验证是否更改镜像npm config get registry3)安装vue脚手架(地基)接着在命令框输入npm install vue-cli -ginstall安装,vue-cli(v原创 2021-04-28 18:06:16 · 409 阅读 · 4 评论 -
SpringBoot中线程异步处理和拒绝策略
一、异步处理1.SpringBoot 工程中默认支持异步操作,但是我们需要首先在启动类的上面,添加启动异步操作的注解(@EnableAsync)描述@EnableAsync@SpringBootApplicationpublic class LogApplication { public static void main(String[] args) { SpringApplication.run(LogApplication.class, args); }}原创 2021-03-19 18:37:02 · 1065 阅读 · 0 评论 -
Spring 框架 AOP 模块定义通知类型
一、常用通知注解Spring 框架 AOP 模块定义通知类型,有如下几种:▪ @Around (优先级最高的通知,可以在目标方法执行之前,之后灵活进行业务拓展.)▪ @Before (目标方法执行之前调用)▪ @AfterReturning (目标方法正常结束时执行)▪ @AfterThrowing (目标方法异常结束时执行)▪ @After (目标方法结束时执行,正常结束和异常结束它都会执行)二、测试2.1定义注解@Retention(RetentionPolicy.RUNTIME)@原创 2021-03-18 23:03:33 · 268 阅读 · 0 评论 -
可变参数的使用
一、可变参数特征1.可变参数只能应用于方法参数的最后一个参数2.可变参数可以理解为一个数组3.为了优化数组方式的传值,同时简化参数类型相同,参数个数不同的一些重载方法的求和public class VarParamTests { // static int sum(int a,int b){// return a+b;// }// static int sum(int a,int b,int c){// return a+b+c;//原创 2021-03-09 14:09:51 · 393 阅读 · 0 评论 -
HiKariCP的取代之路
为何要使用HiKariCP?这要先从BoneCP说起:原本有C3P0/DBCP这些成熟的数据库连接池,一直用的好好的,为什么又搞出一个BoneCP来?因为,传说中BoneCP在快速这个特点上做到了极致,官方数据是C3P0等的25倍左右。HiKariCP是光的意思,作者可能是日本人,用光来表示cp速度之快。HiKariCP的特征:快速、简单、可靠。特点1.字节码精简:优化代码,直到编译后的字节码最少,这样,CPU缓存可以加载更多的程序代码;2.优化代理和拦截器:减少代码,例如HikariCP的St原创 2021-02-20 10:19:57 · 91 阅读 · 0 评论