自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 深度刨析 @Autowired & @Resource 区别

@Autowired & @Resource 区别

2022-03-28 10:03:18 365

原创 spring全局异常处理

spring 全局异常处理机制我们在做业务开发或者框架开发的时候,常常涉及到异常的处理。通常会定义一个和当前业务相关的统一异常,业务层涉及到异常的处理常常把异常统一抛出的控制层。控制层在每个接口中单独处理try{}catch(Exception e){} 。这样做存在以下几个问题异常捕获冗余有的开发同学可能忘了在控制层处理异常后期需要统一异常拦截时,代码改动太多其实在spring 中我们大可不必这样做,spring 已经尽量的帮开发人员减少工作量了。今天我们一起来分析一下spring到底

2021-07-20 16:57:56 556

原创 sofarpc高级进阶之服务发布刨析

SOFARPC 服务发布原理SOFARPC 是蚂蚁SOFASTACK中的rpc框架,每一个中间件的兴起都值得我们学习它的设计理念,以拓展我们的知识储备。基本应该这里就不再展示了。没了解的过的同学可以参考:https://www.sofastack.tech/projects/sofa-rpc/overview/本次基于zookeeper作为注册分析。暴露服务配置好接口后如下@SofaService(interfaceType = HelloSofaV2.class, bindi

2021-07-16 18:05:20 733

原创 springboot 扩展logback原理

spring 官网文档说明了spring 对logback 的扩展Profile-specific Configuration<springProfile name="staging"> <!-- configuration to be enabled when the "staging" profile is active --></springProfile><springProfile name="dev | staging"> .

2021-05-21 13:40:44 411

原创 redis 持久化机制

开源内存数据库特性Redisredis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。Redis 与其他 key - value 缓存产品有以下三个特点:Redis支持丰富的数据类型基本数据类型String、List、Set、ZSet、哈希 和 扩展类型 stream、GEO 等Redis支持数据的持久化RDB:内存快照,它实现类似照片记录效果的方式,就是把某一时刻的状态以文件的形式写到磁盘上,也就是快照 RDB 记录的是某一时刻的数据,并不是操作,所以

2021-05-07 13:53:59 71

原创 java 常用正则校验

1 、必须正数且最多 2 位小数String reg = “^(([1-9]{1}\d*)|([0]{1}))(\.(\d){0,2})?$”;

2020-10-30 17:29:57 215

原创 spring cloud eureka server 源码分析

还是从 spring.factories 文件分析开始org.springframework.boot.autoconfigure.EnableAutoConfiguration=org.springframework.cloud.netflix.eureka.server.EurekaServerAutoConfigurationEurekaServerAutoConfiguration 源码@Configuration(proxyBeanMethods = false)@Import(.

2020-10-27 14:57:00 110

原创 spring cloud eureka client 源码分析

spring cloud eureka client源码分析和常用配置简绍eureka 的起源,项目的快速迭代和产品和快速发展导致微服务的兴起原来的单体架构满足不了项目的快速迭代,许多公司慢慢转向微服务架构的升级,服务动辄成百上千我们急需一种服务治理框架 eureka 诞生了我们本次源码基于 spring-cloud Hoxton.SR4 版本 pom入下<dependencyManagement> <dependencies> <d

2020-10-26 09:51:22 107

原创 spring boot 2.x整合dubbo-xml的方式

spring boot 2.x整合dubbo-xml的方式传统的项目都是基于xml配置文件的方式集成的dubbo,现在假如要升级框架到spring boot但是还是想用原来的方式整合dubbo,那么这篇文章对你应该有帮助项目结构生产者[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nFRGvMHz-1575526058549)(C:\Users\bhh\...

2019-12-05 14:12:59 528

原创 spring对servlet3.0的支持

spring对servlet3.0的支持java 注解的出现可以说对java编程影具有深远的影响。servlet也不例外,servlet3.0 可以使开发人员通过java config 的方式轻松的摆脱 web.xml。spring boot应该是比较好的证明方式ServletContainerInitializerservlet3.0 提供了这个接口,当然servlet 容器也做了相应...

2019-11-08 17:08:26 86

原创 spring ioc 初探

spring 源码分析系列spring ioc 初探1、通过原始的xml实现2、通过 @Component 和它的派生注解 @Controller @Service @Repository 加上注解扫描 @ComponentScan3、通过@Bean向spring注册一个bean4、通过@Configuration 想spring 注册bean5、通过@Import 和 @Configuratio...

2019-11-07 17:29:57 134

原创 spring-boot 自定义 starter 没有 xx-metadata.json文件

基于maven 最近编写自定义的 spring-boot-starter 按照官网教程 org.springframework.boot spring-boot-autoconfigure org.springframework.boot spring-boot-configuration-processor```这两个依赖都导入了,但是发现生成的 st...

2019-08-14 14:36:28 783

原创 mysql 数据迁移-第一篇

场景:现在有这样一个需求场景 一个erp系统 需要展示系统中的全部订单 td_order,td_parcel 数据量 目前也就 200w多的,但是erp 查询条件多需要连接4到5个表才能,现在产品要求不能闲着查询的时间 ,mysql 目前是单库。方案:目前讨论了两种方案:1,通过 logstash-input-jdbc 拉取 mysql 的数据同步到 es 中。2,通过阿里的 canal ...

2019-08-06 17:33:12 114

原创 源码分析前奏之设计模式单例模式

java 开发都知道再java 软件架构中有6种软件架构原则,23种设计模式,今天我们就来聊聊23种设计模式中的 单例模式。今天我们主要看3类单例模式,其余的几种暂时先不看。1、饿汉式​ 一个项目可能我们需要一些全局的配置文件,或者一个上下文一个项目可能只需要一个并且在项目启动的时候就初始化好了。这个时候饿汉式是比较好的选择EagerSingleton.javapackage sing...

2019-07-25 15:33:34 91

原创 源码分析前奏之设计模式工厂模式

源码分析前奏之设计模式java 开发都知道再java 软件架构中有6种软件架构原则,23种设计模式,今天我们就来聊聊23种设计模式中的 工厂模式。工厂模式按照我的理解可以分为3种。简单工厂、复杂工厂、抽象工厂。玩的高级的可能都在用 抽象工厂包括 spring,现在我们仔细分析一下。1、简单工厂模式​ 工作中我们难免会发消息,微信、钉钉等现在我们用简单工厂模式生产一下这几种消息的发送。M...

2019-07-24 13:37:44 90

转载 分布式事物的解决方案,看这个一篇就够了

1.0 分布式事务概述1、事务简介事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。在关系数据库中,一个事务由一组SQL语句组成。事务应该具有4个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为ACID特性。原子性(atomicity):个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。一致性(consis...

2019-04-25 16:02:22 662 1

原创 mysq coun(*)时为啥这么慢

mysql select count(*) from table; 当表数据到达一定量时为啥这么慢!mysql 不同的存储引擎 count 的时候的机制不一样,前提是 没有where 条件 ,那你可能会想mysql 为啥不把当前表的数据行数记录下来呢?这样当一条sql 语句执行 select count() from table 时直接读记录的行数就可以了。其实mysql 再 myisam 中就...

2019-04-22 16:49:55 267

空空如也

空空如也

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

TA关注的人

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