自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

每日一记,每周一结。

眼前事、持恒心、先做好、在做对

  • 博客(87)
  • 收藏
  • 关注

原创 JDBC 【SQL注入】

PreparedStatement 是 Statement 接口的子接口,继承于父接口中所有的方法。它是一个预编译的 SQL 语句对象.预编译: 是指SQL 语句被预编译,并存储在 PreparedStatement 对象中。然后可以使用此对象多次高效地执行该语句。

2023-10-07 08:49:31 655 1

原创 JDBC【DBUtils】

QueryRunner 中提供对sql语句操作的API.ResultSetHandler接口,用于定义select操作后,怎样封装结果集.DbUtils类,他就是一个工具类,定义了关闭资源与事务处理相关方法.除了表之外的数据都是元数据,可以分为三类查询结果信息: UPDATE 或 DELETE语句 受影响的记录数。数据库和数据表的信息: 包含了数据库及数据表的结构信息。MySQL服务器信息: 包含了数据库服务器的当前状态,版本号等。JDBC中描述元数据的类。

2023-09-29 07:00:00 322

原创 JDBC

获取驱动(可以省略)获取连接获取Statement对象处理结果集(只在查询时处理)释放资源。

2023-09-28 11:40:03 246

原创 Mysql高级

数据库设计概念数据库设计就是根据业务系统的具体需求,结合我们所选用的DBMS,为这个业务系统构造出最优的数据存储模型。建立数据库中的表结构以及表与表之间的关联关系的过程。有哪些表?表里有哪些字段?表和表之间有什么关系?数据库设计的步骤需求分析(数据是什么?数据具有哪些属性?数据与属性的特点是什么)逻辑分析(通过ER图对数据库进行逻辑建模,不需要考虑我们所选用的数据库管理系统)

2023-09-28 10:42:37 434

原创 Mysql基础【操作表中数据入门查询】

DML主要是对数据进行增(insert)删(delete)改(update)操作。

2023-09-27 10:34:16 184

原创 Mysql基础【操作数据库表】

英文:Structured Query Language,简称 SQL结构化查询语言,一门操作关系型数据库的编程语言定义操作所有关系型数据库的统一标准对于同一个需求,每一种数据库操作的方式可能会存在一些不一样的地方,我们称为“方言”通用语法1) SQL语句可以单行 或者 多行书写,以分号 结尾;2) 可以使用空格和缩进来增加语句的可读性。3) MySql中使用SQL不区分大小写,一般关键字大写,数据库名 表名列名 小写。4) 注释方式单行注释 -- show databases。

2023-09-27 10:03:33 82

原创 SpringMVC(进阶版)

步骤分析创建异常处理器类实现HandlerExceptionResolver配置异常处理器编写异常页面测试异常跳转Restful是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。主要用于客户端和服务器交互类的软件,基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存机制等。Restful风格的请求是使用“url+请求方式”表示一次请求目的的,HTTP 协议里面四个表示操作方式的动词如下:GET:读取(Read)POST:新建(Create)

2023-09-26 17:23:29 308

原创 SpringMVC

SpringMVC 是一种基于 Java 的实现 MVC 设计模式的轻量级 Web 框架,属于SpringFrameWork 的 后续产品,已经融合在 Spring Web Flow 中。SpringMVC 已经成为目前最主流的MVC框架之一,并且随着Spring3.0 的发布,全面超越 Struts2, 成为最优秀的 MVC 框架。它通过一套注解,让一个简单的 Java 类成为处理请求的控制器,而无须实现 任何接口。同时它还支持 RESTful 编程风格的请求。

2023-09-26 16:58:24 654

原创 Docker容器技术

容器技术、虚拟化技术已经成为一种被大家广泛认可的服务器资源共享方式,容器技术可以在按需构建操作系统实例的过程当中为系统管理员提供极大的灵活性。由于hypervisor虚拟化技术仍然存在一些性能和资源使用效率方面的问题,因此容器技术(Container)结合虚拟化技术的解决方案正在我们的业务使用中高频使用。

2023-08-02 15:39:04 1036

原创 JAVA设计模式——23种设计模式详解

设计模式(Design pattern) 是解决软件开发某些特定问题而提出的一些解决方案也可以理解成解决问题的一些思路。通过设计模式可以帮助我们增强代码的可重用性、可扩充性、 可维护性、灵活性好。我们使用设计模式最终的目的是实现代码的高内聚和低耦合。

2023-07-23 07:00:00 2887 1

原创 深度理解BeanFactory和ApplicationContext的区别

BeanFactory是spring的原始接口,针对原始结构的实现类功能比较单一,BeanFactory接口实现的容器,特点是在每次获取对象时才会创建对象。继承了BeanFactory接口,拥有BeanFactory的全部功能,并且扩展了很多高级特性,每次容器启动时就会创建所有的对象。创建ApplicationContext的方法:丛类路径下加载配置文件:ClassPathXmlApplicationContext (“applicationContext.xml”);

2023-07-23 07:00:00 228

原创 深度理解 Spring AOP

AOP 为 Aspect Oriented Programming 的缩写,意思为面向切面编程,是通过预编译方式 和运行期 动态代理 实现程序功能的统一维护的一种技术。AOP (面向切面编程)是 OOP(面向对象) 的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程 的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。

2023-07-22 08:01:24 279

原创 深度理解 Spring IOC

Spring 通过一个配置文件描述 Bean 及 Bean 之间的依赖关系,利用 Java 语言的反射功能实例化 Bean 并建立 Bean 之间的依赖关系。Spring 的 IoC 容器在完成这些底层工作的基础上,还提供了 Bean 实例缓存、生命周期管理、 Bean 实例代理、事件发布、资源装载等高级服务。BeanFactory 是 Spring 框架的基础设施,面向 Spring 本身;ApplicationContext 面向使用 Spring 框架的开发者,几乎所有的应用场合我们都直接使用。

2023-07-22 07:34:48 140

原创 JAVA设计模式——单例模式

单例模式是应用最广的设计模式之一,也是程序员最熟悉的一个设计模式,使用单例模式的类必须保证只能有创建一个对象。今天主要是回顾一下单例模式,主要是想搞懂以下几个问题为什么要使用单例?如何实现一个单例?单例存在哪些问题?单例对象的作用域的范围单例模式是如何保证唯一性的。

2023-07-21 21:21:16 511

原创 微服务架构——Seata

Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。Seata的执行流程如下:A服务【订单微服务】的TM[事务发起者]向TC[seata服务端]申请开启一个全局事务,TC就会创建一个全局事务并返回一个唯一的XIDA服务开始远程调用B服务【账户微服务】,此时XID会在微服务的调用链上传播B服务的RM向TC注册分支事务,并将其纳入XID对应的全局事务的管辖。

2023-07-21 21:11:21 158

原创 Sentinel 规则持久化到 Nacos

当你在 sentinel 控制台中,无论增加规则,还是修改规则,都会同步到 nacos;pull模式:控制台将配置的规则推送到Sentinel客户端,而客户端会将配置规则保存在本地文件或数据库中。然后浏览器访问:http://localhost:8090 , 最开始什么都没有,然后访问你自己的项目的任意一个要限流的接口,则 左侧会出现对于的 服务名称。注意,一定要点 带 2 的,只有带 2 的才能推送到 nacos,在 流控规则 选项中添加也不行,只能点击 蓝色方框 才能推送到 nacos。

2023-07-20 20:24:36 896 2

原创 微服务保护——Sentinel【实战篇二】

默认情况下,发生限流、降级、授权拦截时,都会抛出异常到调用方。@Component@OverrideString msg ="未知异常";msg="请求被限流了";msg="请求被降级了";msg="热点参数被限流了";msg="请求没有权限";status=401;

2023-07-20 19:45:08 472

原创 微服务保护——Sentinel【实战篇】

快速失败:QPS超过阈值时,拒绝新的请求warm up: QPS超过阈值时,拒绝新的请求;QPS阈值是逐渐提升的,可以避免冷启动时高并发导致服务宕机。排队等待:请求会进入队列,按照阈值允许的时间间隔依次执行请求;如果请求预期等待时长大于超时时间,直接拒绝。

2023-07-19 20:32:10 1191

原创 微服务保护——Sentinel【快速入门】

Sentinel是阿里巴巴开源的一款微服务流量控制组件。官网地址:https://sentinelguard.io/zh-cn/index.html丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。完备的实时监控:Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运行情况。

2023-07-19 16:07:17 825

原创 微服务架构——配置中心

配置中心」,顾名思义,就是用来统一管理项目中所有配置的系统。虽然听起来很简单,但也不要小瞧了这个模块。如果一个中型互联网项目,不采用配置中心的模式,一大堆的各类配置项,各种不定时的修改需求,一定会让开发同学非常头疼且管理十分混乱。我认为甚至可以直接用 “一个项目中是否有无采用「配置中心」” 这一粗略的条件,来判断一个互联网研发团队是否规范和成熟。

2023-07-18 19:20:57 1347 2

原创 微服务sleuth+zipkin——链路追踪

SpringCloud Sleuth主要功能就是在分布式系统中提供追踪解决方案。它大量借用了Google Dapper的设计, 先来了解一下Sleuth中的术语和相关概念。

2023-07-18 17:01:27 1543

原创 Gateway自定义过滤器——全局过滤器

在这里演示过滤黑白名单#配置端口号server : port : 81 #服务名称#配置路径规则cloud : gateway : routes : - id : lzq01 #路由的唯一标识 -- -- -- - 随便起只要不重复就可以 如果不写默认uuid创建uri : http : / / localhost : 8001 # 真是转发地址predicates : # 断言 当满足当前条件时进行跳转到uri 可以理解为判断 - Path = / aaa /**

2023-07-17 20:44:47 4717

原创 Gateway网关简介及使用

网关的角色是作为一个 API 架构,用来保护、增强和控制对于 API 服务的访问。API 网关是一个处于应用程序或服务(提供 REST API 接口服务)之前的系统,用来管理授权、访问控制和流量限制等,这样 REST API 接口服务就被 API 网关保护起来,对所有的调用者透明。因此,隐藏在 API 网关后面的业务系统就可以专注于创建和管理服务,而不用去处理这些策略性的基础设施。

2023-07-17 17:25:30 582

原创 Spring MVC 运行原理 【深度理解】

SpringMVC是一个基于MVC模式的Web框架,是Spring框架的一个模块。它以SpringIOC容器为基础,并利用容器的特性来简化它的配置,所以 SpringMVC 和 Spring 可直接整合使用。SpringMVC 对 MVC 流程进行了封装,屏蔽掉很多底层代码,让开发者可以更加轻松快捷的完成基于 MVC 模式的 Web 开发。总的来说:Spring MVC是Spring Framework的一部分,是基于Java实现MVC的轻量级Web框架。

2023-07-16 07:00:00 247

原创 并发事务会有哪些问题?

多个事务并发的执行一定会出现相互争夺资源的问题。那么问题具体有哪些呢?以上这四个问题就是我们需要知道的。但是脏写,由于mysql最低的隔离级别都能避免掉该问题。所以脏写我们就不用去着重去记了。我们就着重看剩下三个读问题。都是读,大家就更好记了。首先我们说下脏读。A事务读取到了,B事务中还未提交的修改的数据。如果此时B事务发生了回滚。那么name也就还是原来的值,并没有修改为张三。但此时A事务中已经读到了张三,这就是脏读。

2023-07-16 07:00:00 246

原创 微服务架构Ribbon与OpenFeign的使用 【快速入门】

Spring Cloud Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,它基于Netflix Ribbon实现,通过Spring Cloud的封装,可以让我们轻松地将面向服务的Rest模板请求自动转换成客户端负载均衡的服务调用。Ribbon只具有负载均衡的能力,并不具有发送请求的能力。所以,需要配合服务通信组件,如:RestTemplateILoadBalancer:负载均衡器。LoadBalancerBuilder: 负载均衡器构造器ServerList: 服务列表。

2023-07-15 16:45:10 1346

原创 Nacos知识掌握【快速入门】

概览欢迎来到 Nacos 的世界!Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

2023-07-15 16:04:17 199

原创 搭建微服务工程 【详细步骤】

本篇文章用到的技术栈mysql+mybatis[mp]+springboot+springcloud alibaba

2023-07-14 20:08:40 3167 2

原创 什么是微服务架构

你考虑过吗?什么是微服务,为什么越来越多的企业,为了使自己构建的应用满足客户的期望,而和微服务架构进行整合呢?微服务,又叫微服务架构,是一种软件架构方式。它将应用构建成一系列按业务领域划分模块的、小的自治服务。在微服务架构中,每个服务都是自我包含的,并且实现了单一的业务功能。简单来说,就是将一个系统按业务划分成多个子系统,每个子系统都是完整的,可独立运行的,子系统间的交互可通过HTTP协议进行通信(也可以采用消息队列来通信,如RoocketMQ,Kafaka等)。

2023-07-14 19:17:27 466

原创 RabbitMQ知识掌握 【进阶篇】

1] 保证消息的可靠性投递: confirm机制和return机制[2] 队列中:—持久化[3]使用ack机制保证消费者的可靠性消费。

2023-07-13 19:02:11 1351 2

原创 RabbitMQ 的五种工作模式

Work Queues 对于任务过重或任务较多情况使用工作队列可以提高任务处理的速度。例如:短信服务部署多个,只需要有一个节点成功发送即可。

2023-07-13 07:00:00 1088 5

原创 安装RabbitMQ 详细步骤

我这里是在Linux系统里面安装的按照步骤即可。

2023-07-12 19:33:23 1386

原创 消息中间件RabbitMQ详解

2007 年发布,是一个在 AMQP(高级消息队列协议)基础上完成的,可复用的企业消息系统,是当前最主流的消息中间件之一。RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue 高级消息队列协议 )的开源实现,由于erlang 语言的高并发特性,性能较好,本质是个队列,FIFO 先入先出,里面存放的内容是messageRabbitMQ是一个消息中间件:它接受并转发消息。

2023-07-12 19:06:04 1370

原创 Vue前后端分离项目 【实战篇】

解决shiro中session的共享问题,如何解决session共享问题,解决前端不支持cookie的效果,设置前端前置路由守卫, 如何防止恶意重复登录,退出功能,获取当前登录用户的信息

2023-07-11 20:18:36 1617

原创 Vue脚手架使用 【实战篇】

(1)在子组件中使用props来声明变量 用来接受父组件传递的数据。(2)父组件在使用子组件时 属性名来传递。

2023-07-11 07:00:00 325

原创 Vue脚手架使用【快速入门】

在黑窗口中输入vue ui命令再更改完路径地址后需要按回车。

2023-07-10 16:57:10 306

原创 安装Nodejs、NPM、Vue脚手架详细教程

查看自己电脑是否安装nodejs我这里已经下载过了,没有下载过的会提示该命令不存在可以到官网下载一下不要安装在中文路径下。

2023-07-10 15:40:52 1159

原创 SSM项目 shiro整合redis

创建好web工程后(不会创建的可以看我前几篇文章)看不懂的小伙伴可以看一下我的第一篇文章里面有详细的介绍。

2023-07-09 08:00:00 401

原创 ssm整合shiro安全框架 前后端分离项目

上一篇文章我们使用ssm整合了shiro安全框架前后端没有进行分离本篇文章在上一章的项目基础上进行前后端代码分离操作(2) 修改controller代码🥝修改前代码修改后二、权限不足时前后端代码分离🍉修改权限不足的异常处理类三、未登录时前后端代码分离🍉修改前修改后

2023-07-09 07:00:00 240

原创 深度理解 JAVA 动态代理

为了理解动态代理,我们需要先了解代理模式是怎么回事。

2023-07-08 11:37:53 231

sentinel 1.8.1 的持久化源码改造

push模式:控制台将配置规则推送到远程配置中心,例如Nacos。Sentinel客户端监听Nacos,获取配置变更的推送消息,完成本地配置更新。 sentinel 的持久化,我们希望这样: 可以在 sentinel 控制台中编辑 限流配置,并且同步到 nacos 做持久化 在 nacos 中修改了限流配置,也可以同步到 sentinel 控制台 要实现上述第一个功能需要对 sentinel 控制台的源码有所了解,并加依改造。 java -Dserver.port=8090 -Dnacos.serverAddr=localhost:8848 -jar sentinel-dashboard.jar # -Dserver.port 控制台端口号 # -Dnacos.serverAddr: nacos 地址 # -Dnacos.namespace: 你项目所在的 nacos 命名空间 如果命名空间就是public可以省略该参数

2023-07-20

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

TA关注的人

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