
spring
文章平均质量分 74
MiMing仔
这个作者很懒,什么都没留下…
展开
-
mybatis在xml中传入整型参数为0时查询条件失效
文章目录Mybatis查询语句sql拼装源码解析带着问题学习源码(从加载mapper到sql拼装)问题现象原因源码解析(Mybatis-plus)1、加载SqlSessionFactoryxmlConfigBuilder.parse();xmlMapperBuilder.parse();2、mapper接口生成代理对象3、调用查询方法DefaultSqlSession代理对象获取sqlSession装饰者模式创建executor和责任链模式interceptorChain加载插件继续执行查询关键查询解析sq原创 2022-04-21 12:48:31 · 1684 阅读 · 2 评论 -
Mybatis查询语句sql拼装与Ognl源码解析
文章目录Mybatis查询语句sql拼装源码解析带着问题学习源码(从加载mapper到sql拼装)问题现象原因源码解析(Mybatis-plus)1、加载SqlSessionFactoryxmlConfigBuilder.parse();xmlMapperBuilder.parse();2、mapper接口生成代理对象3、调用查询方法DefaultSqlSession代理对象获取sqlSession装饰者模式创建executor和责任链模式interceptorChain加载插件继续执行查询关键查询解析sq原创 2022-04-21 12:47:12 · 1775 阅读 · 0 评论 -
springboot启动加载SpringApplication.run(TradeApplication.class, args)
springboot启动加载SpringApplication.run(TradeApplication.class, args)原创 2022-02-14 12:38:19 · 579 阅读 · 0 评论 -
尚硅谷阳哥SpringCloud Stream消息驱动
Stream为什么被引入常见MQ(消息中间件)ActiveMQRabbitMQRocketMQKafka有没有一种新的技术诞生,让我们不再关注具体MQ的细节,我们只需要用一种适配绑定的方式,自动的给我们在各种MQ内切换。Cloud Stream是什么?屏蔽底层消息中间件的差异,降低切换成本,统一消息的编程模型。Stream是什么及Binder介绍官方网站 https://spring.io/projects/spring-cloud-stream#overview官方网站 http原创 2022-01-03 16:43:09 · 190 阅读 · 0 评论 -
异步多线程 CompleteableFuture
https://www.liaoxuefeng.com/wiki/1252599548343744/1306581182447650转载 2021-11-18 09:39:49 · 208 阅读 · 0 评论 -
尚硅谷阳哥SpringCloud Bus消息总线
SpringCloud Bus消息总线概述想要实现分布式自动刷新配置功能,就要使用SpringCloud Bus配合SpringCloud Config使用可以实现配置的动态刷新。是什么Bus支持两种消息代理:RabbitMQ和Kafka。能干什么SpringCloud Bus能管理和传播分布式系统间的消息,就像一个分布式执行器,可用于广播状态更改、事件推送等,也可以当作微服务间的通信通道。为什么被称为总线什么是总线在微服务架构的系统中,通常会使用轻量级的消息代理来构建一个共用的消息主题原创 2021-11-14 21:36:18 · 146 阅读 · 0 评论 -
尚硅谷阳哥SpringCloud-config
SpringCloud Config配置中心概述是什么SpringCloud Config为微服务架构中的微服务提供集中化的外部配置支持,配置服务器为各个不同微服务应用的所有环境提供了一个中心化的外部配置。怎么玩SpringCloud Config分为服务端和客户端两部分。服务端也称为分布式配置中心,它是一个独立的微服务应用,用来连接配置服务器并为客户端提供获取配置信息,加密/解密信息等访问接口。客户端则是通过指定的配置中心来管理应用资源,以及与业务相关的配置内容,并在启动的时候从配置中心获原创 2021-11-02 23:09:42 · 238 阅读 · 0 评论 -
尚硅谷阳哥SpringCloud服务注册和发现OpenFeign入门
OpenFeign服务接口调用概述是什么官方文档Feign是一个声明式WebService客户端。使用Feign能让编写Web Service客户端更加简单。它的使用方法是定义一个服务接口然后在上面添加注解。Feign也支持可拔插式的编码器和解码器。Spring Cloud对Feign进行了封装,使其支持了Spring MVC标准注解和HttpMessageConverters。Feign可以与Eureka和Ribbon组合使用以支持负载均衡。Feign能干什么前面在使用Ribbon+RestT原创 2021-09-05 23:22:29 · 270 阅读 · 0 评论 -
尚硅谷阳哥SpringCloud服务注册和发现Ribbon入门
Ribbon负载均衡服务调用是什么Spring Cloud Ribbon是基于Netfix Ribbon实现的一套客户端负载均衡的工具。简单的说,Ribbon是Netfix发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer(简称LB)后面所有的机器,Ribbon会自动的帮助你基于某种规则(如简单轮询,随机选择等)去连接这些机器。我们很容易使用Ribbon实现自定义的负原创 2021-08-22 23:37:59 · 189 阅读 · 0 评论 -
尚硅谷阳哥SpringCloud服务注册和发现Consul
Consul服务注册与发现简介官网:https://www.consul.io/docs/intro是什么Consul是一套开源的分布式服务发现和配置管理系统,由HashiCorp公司用Go语言开发的。提供了微服务系统中的服务治理、配置中心、控制总线等功能。这些功能中的每一个都可以根据需要单独使用,也可以一起使用以构建全方位的服务网络,总之Consul提供了一种完整的服务网格解决方案。它具有很多优点。包括:基于raft协议,比较简洁;支持健康检查,同时支持HTTP和DNS协议,支持跨数据中心的W原创 2021-07-15 22:31:06 · 209 阅读 · 0 评论 -
尚硅谷阳哥SpringCloud服务注册和发现Zookeeper
Zookeeper服务注册与发现Zookeeper的安装使用Zookeeper进行服务注册的步骤经典五步1.建module2.引pom<dependencies> <groupId>com.jg.springcloud</groupId> <artifactId>cloud-api-commons</artifactId> <version>${project.version}</version原创 2021-07-15 15:20:44 · 192 阅读 · 0 评论 -
尚硅谷阳哥SpringCloud服务注册和发现Eureka
Eureka基础知识什么是服务治理Spring Cloud封装了Netflix公司开发的Eureka模块来实现服务治理在传统的rpc远程调用框架中,管理每个服务于服务之间依赖关系比较复杂,管理比较复杂,所以需要使用服务治理,管理服务与服务之间的依赖关系,可以实现服务调用、负载均衡、容错等,实现服务发现与注册。什么是服务注册与发现Eureka采用了CS的设计架构,Eureka Server作为服务注册功能的服务器,它是服务注册中心。而系统中的其它微服务,使用Eureka的客户端连接到Eureka S原创 2021-07-15 11:39:32 · 199 阅读 · 0 评论 -
尚硅谷阳哥SpringCloud支付与消费者订单模块构建
微服务模块步骤1.建module2.改pom3.写YMl4.主启动5.业务类新建module一、 cloud-provider-payment8001pom文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"原创 2021-07-14 22:54:55 · 395 阅读 · 0 评论 -
尚硅谷阳哥SpringCloud搭建项目
新建项目依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0原创 2021-07-14 11:13:17 · 290 阅读 · 0 评论 -
尚硅谷阳哥SpringCloud入门介绍
什么是微服务架构SpringCloud 经典图相关维度什么是SpringCloudSpringboot 和 SpringCloud版本选型选型需要依赖官网。SpringCloud 地址:https://spring.io/projects/spring-cloud技术选型地址:https://start.spring.io/actuator/info可以JSON格式化 查看对应需要的版本Springcloud 架构图学习图...原创 2021-07-14 10:33:14 · 363 阅读 · 0 评论 -
Jeepay SpringSecurity learning
Jeepay 开源的支付框架一 配置WebSecurityConfig@Configuration@EnableWebSecurity@EnableGlobalMethodSecurity(prePostEnabled = true) //开启@PreAuthorize @PostAuthorize 等前置后置安全校验注解public class WebSecurityConfig extends WebSecurityConfigurerAdapter{ @Autowired .原创 2021-07-12 15:13:47 · 477 阅读 · 0 评论 -
同源策略与跨域及springboot跨域方式
同源策略与跨域一、什么是同源策略同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。同源策略会阻止一个域的javascript脚本和另一个域的内容进行交互。所谓同源(即指在同一个域)就是两个页面具有相同的协议(protocol),主机(host)和端口号(port)。二、什么是跨域当一个请求url的协议、域名、端口三者原创 2021-07-09 12:40:53 · 792 阅读 · 0 评论 -
Spring Cloud Config 干货
1.部分依赖//这个依赖项是所有Spring Cloud 项目使用的<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-config</artifactId> </dependency>// 包含了spring-cloud-server 的核心库 前两个可以构成conf原创 2021-06-24 19:07:51 · 207 阅读 · 0 评论 -
Spring微服务的生命周期
DevOps 基于 4条原则带啊开始微服务的开发工作并且根据这些原则创建1.服务装配如何打包和部署服务以保证可重复性和一致性,以便相同的服务代码和运行时被完全相同地部署?2.服务引导如何将应用程序和环境特定的配置代码与运行时代码分开,以便可以在任何环境中快速启动和部署微服务实例,而无需对配置微服务进行人为干预?3.服务注册/发现部署一个新的微服务实例时,如何让新的服务实例可以被其他应用程序客户端发现。4.服务监控在微服务环境中,由于高可用性需求,同一服务运行多个实例非常常见。从DevOps的原创 2021-06-24 16:36:46 · 289 阅读 · 0 评论 -
Spring异步通信(三)Kafka
Spring异步通信(三)KafkaKafka设计为集群运行,实现很强的可扩展性。通过将主题在集群的所有实例上进行分区(partition),它能够具有更强的弹性。RabbitMQ 主要处理Exchange中的队列Kafka仅使用主题实现消息的发布/订阅kafka主题会复制到集群的所有代理商。集群中的每个节点都会担任一个或多个主题的首领(leader),负责该主题的数据并将其复制到集群中的其他节点上。更进一步讲,每个主题可以划分为多个分区。在这种情况下,集群中的每个节点是某个主题一个或多个分区的原创 2021-06-13 19:46:12 · 353 阅读 · 2 评论 -
Spring异步通信(二)RabbitMQ 和 AMQP
Spring异步通信(二)RabbitMQ 和 AMQP前面讲到JMS消息使用目的地名称来寻址,接受者要从这里检索信息而AMQP消息使用Exchange 和 routing key 来寻址。消息就与接受者要监听的队列解耦了。发送到RabbitMQ Exchange的消息会基于routing key 和 binding被路由到一个或多个队列上当消息抵达RabbitMQ代理的时候,它会进入为其设置Exchange上。Exchange负责将它路由到一个或多个队列上。这个过程会根据Exchange的类型原创 2021-06-13 19:03:11 · 282 阅读 · 0 评论