3 liushangzaibeijing

尚未进行身份认证

Write the code, Change the world!

等级
TA的排名 5w+

spring源码分析之AOP原理

本篇博文主要针对SpringAOP的应用进行源码级别的分析,从自定义标签开始,解析为BeanDefintion,将其转换为bean后置处理器,在获取其他bean的时候初始化initializeBean()方法,应用该后置处理器创建代理对象,同时针对代理对象的创建我们也进行了分析。希望通过这篇博文能给读者对springAOP的理解有大的帮助。

2020-05-18 19:10:38

记录一次liunx服务器被入侵和删除木马程序的经历

一、背景 之前在腾讯云买了一台云服务器用来自己玩玩,同时也顺手编写了一个程序发布到该服务器上了,之后由于工作的繁忙,无暇顾及该服务的运行状态,最近突然发现原来的程序无法使用显示 无数据显示,登录服务器突然发现服务器特别的卡。 查看程序运行日志发现数据库密码被修改 无法登录,使用top查看进行发现有个程序占用cpu达到91.5%太可怕了,这里不得不吐槽一下腾讯云 挺坑的被当成一...

2020-05-15 14:57:04

spring源码分析之bean的创建

本篇博文通过分析beanFactory.getBean() 方法,完整的阐述了在spring中如何获取一个实例化的bean,分析了相关的源码逻辑,希望能对读者分析spring源码起到很好的参考作用

2020-05-04 14:00:31

spring源码分支之循环依赖以及解决方案

本篇博文分几个点:什么是循环引用、循环引用的类型、spring对循环引用的解决、通过一个例子列举处理了spring中循环引用的问题,并通过对spring部分源码的分析简明扼要的解释了spring对于循环引用的结局。希望能对大家工作中遇到的这类问题有所帮助。

2020-04-25 11:40:05

spring源码分析之bean的加载

这篇博文主要针对getBean()方法来介绍bean加载的相关原理,其中涉及到循环依赖解决,FactoryBean获取对象,类型转换等知识点,通过这篇博文读者可以概览bean的加载流程,读者可以对spring源码解析有清晰的认识

2020-04-23 22:30:25

spring源码分析之容器的使用

本篇博文从通过xml配置一个交由Spring管理的类 并通过XmlBeanFactory类获取的小例子,简单的梳理了一下其中将xml资源转换为BeanDefintion的流程。包括xml文件的读取转换,xml文件的解析,自定义标签解析和默认标签解析,BeanDefintion的注册等各个功能介绍。希望通过这篇文章大家能有所收获。

2020-03-29 14:45:24

spring源码分析之BeanDefinition相关

BeanDeifntion是spring比较核心的组件,它将我们定义的bean都会抽像成对应的BeanDefintion实例对象。了解其相关的知识点对于我们以后通读spring源码以及更加得心应手的应用有很多的好处。本篇博文针对BeanDefintion的家族相关的类与接口进行相关的介绍,同时针对我们项目中相关xml中定义相关的bean(各种各样bean)的属性进行了使用以及应用场景的介绍。以后会追加相关注解(好像没必要相关xml概念可以直接移植到注解的使用方式也是可用的)。

2020-03-28 23:53:59

Spring源码分析之一BeanFactory相关

我们通过一个简单的在xml配置bean并通过XmlBeanFactory获取bean实例的常见小场景引申出XmlBeanFactory类,并通过该类的UML的关系类图大致去了解BeanFactory接口系列的各个接口和类的实现。本篇幅由于对于BeanFactory家族的成员介绍的比较繁琐,所以篇幅有点过长且枯燥(主要对接口功能和类的实现做了说明和笔者自己的理解),但是笔者认为泛读本篇博文对于我们以后解读Spring的源码做了基础性的工作。

2020-03-01 15:36:08

redis配置文件详解

redis史上最全最详细的配置文件解读,想要学习的同学速来围观,快过来看,不看会后悔啊。redis启动的时候除了可以不带参数启动之外,对于其他灵活配置 也提供了其他配置选项,如是否开启持久化、日志级别等。由于可以配置的选项较多,通过启动参数设置这些选项并不方便,所以redis支持通过配置文件来设置这些选项。方法是在启动时将配置文件路径作为参数,下面我们来简单介绍一下该配置 redis.conf...

2019-10-12 14:12:25

springcloud学习笔记之Feign组件

springClound有关feign的分析,作者从示例开头一步一步帮你揭开feign的神秘面纱。作者从四个方面阐述springClound的feign组件 1、feign的概念以及使用实例 2、通过@EnableFeignClient注解 分析了feign和spring结合的原理 3、通过@FeignClient注解,分析feign如何使用希望能给你在学习springClound的过程中带来一些帮助。

2019-07-06 17:02:24

使用javaAPI来操作elasticsearch

一、创建客户端1、使用java通过编码的方式创建客户端elasticsearch客户端是java操作elasticsearch的核心对象所有的操作例如创建索引,添加索引,删除索引等操作均有该对象的api执行//配置设置文件Settings settings = Settings.settingsBuilder().put("client.transport.sniff", tru...

2019-06-26 15:27:45

Elasticsearch 客户端使用

全文搜索引擎 Elasticsearch 入门教程全文搜索属于最常见的需求,开源的Elasticsearch(以下简称 Elastic)是目前全文搜索引擎的首选。它可以快速地储存、搜索和分析海量数据。维基百科、Stack Overflow、Github 都采用它。Elastic 的底层是开源库Lucene。但是,你没法直接用 Lucene,...

2019-06-26 15:13:56

java并发相关的线程池

一、ThreadPoolExecutor类ThreadPoolExecutor是一个线程池的执行类其相关的参数为://第一个参数:核心线程的个数int corePoolSize = 3;//第二个参数 最大线程个数int maximumPoolSize = 10;//第三个参数 线程的存活时间(一般是非核心线程的可存活时间, 但是如果设置了allowCoreThread...

2019-06-26 14:47:41

springcloud学习笔记之Ribbon组件(含项目)

目录一、Ribbon简介 二、Ribbon与RestTemplate结合使用三、Ribbon源码分析 0、问题释疑 1、@LoadBalanced原理探究 1.1、LoadBalancerAutoConfiguration原理分析 1.2、LoadBalancerInterceptor分析 2、核心...

2019-06-01 13:13:39

springcloud学习笔记之eureka组件

1、eureka示范例子Github地址 https://github.com/liushangzaibeijing/eureka2、 Eureka的一些概念Register:服务注册当Eureka客户端向Eureka Server注册时,它提供自身的元数据,比如IP地址、端口,运行状况指示符URL,主页等。Renew:服务续约Eureka客户会每隔30秒发送一次心...

2019-03-30 14:27:23

springcloud学习笔记之微服务概念

微服务概念what 微服务是什么1)、微服务代码比较小,业务单一2)、服务独立运行在进程中的单元组件3)、微服务特点: 按照业务来划分服务,单个服务代码量小,业务单一,易于维护。 微服务都有自己独立的基础组件,例如数据库、缓存等,且运行在独的进程中。 微服务之间的通信是通过HTTP协议或者消息组件,且具有容错能力。 微服务有一套服务治理的解决方案,服务之间不相合...

2019-03-30 14:00:54

activiti工作流

一、activiti简介          activiti是一个业务流程的管理框架,它主要解决是多个用户之间按照某种特定的规则流程去使任务自动进行完成。使用工作流的软件系统有如下有点1、提高系统的柔性,适应业务流程的变化 2、实现更好的业务过程控制,提高顾客服务质量 3、降低系统开发和维护成本。二、activiti应用场景       oa系统的请假流程,审批流程,报销流程等。三...

2019-02-23 19:14:35

springMVC流程解析

一、springMVC流程分析     1、一次请求的url流程            (1)客户端发起的请求request通过核心处理器DispatcherServlet进行处理      (2-3)核心处理器DispatcherServlet通过注册在spring中的HandlerMapping找到对应的Handler(其实是HandlerMethod,可以认为是我们编写的某个C...

2019-02-12 16:23:02

SpringBoot自动装配的魔力

一、springBoot自动配置的好处1、回想一下当你在使用spring来搭建一个项目的时候,你需要编写很多的有关spring的xml。例如读取属性配置的bean、数据源bean、事务管理工厂bean、mybatis与spring整个的bean等等。再次利用该框架搭建项目的时候,又是周而复始的操作。但是现在当你使用springBoot搭建项目的时候,你会发现所有的配置你都不用去编写就可...

2019-02-12 11:18:32

Mybatis源码解析之四 mybatis执行流程

目录一、缘起二、示例代码 1、mybatis单独测试操作代码2、spring与mybatis的整合操作代码3、总结三、mybatis执行流程1、mybatis的架构设计图2、mybatis的执行流程图3、mybatis执行流程时序图4、Mybatis的核心组件5、mybatis执行流程的分析一、缘起 前三篇的文章...

2019-01-21 19:10:40

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 原力新人
    原力新人
    在《原力计划【第二季】》打卡挑战活动中,成功参与本活动并发布一篇原创文章的博主,即可获得此勋章。