简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
截止稿前,java10都已经发布了,现在我们来讨论一下java8。本文的讨论,只是一个简述,更加具体的,各位可以参照各自的专题讲解说在前面Java 8可谓是自Java 5以来最具革命性的版本了,她在语言、编译器、类库、开发工具以及Java虚拟机等方面都带来了不少新特性。我们来一一回顾一下这些特性。一、Lambda表达式Lambda表达式可以说是Java 8最大的卖点,她将函数式...
前言什么时候一个Java工程里需要控制多个数据源呢?我认为有如下两种情况:业务需要。比如项目里要实现两个DB的双写/数据迁移,或者微服务边界划分不清使得一个工程直链了多个DB读写分离。现在稍微大型一点的网站,为了提升DB的吞吐量和性能,数据库一般都会采用集群部署(1个Master+N个Slave模式)。不管是什么原因我们需要控制多个数据源,在技术实施层面上都是一样的。因此下面主要以最为...
Netflix Eureka 1.x和2.x,你怎么选?
5.x主版的最后一个功能分支,官方建议你赶紧升级
前言上篇博客:【小家Spring】Spring MVC容器的web九大组件之—HandlerMapping源码详解(一)已经分析过了HandlerMapping的一些抽象实现原理,以及AbstractHandlerMapping的一个主要分支:AbstractUrlHandlerMapping体系的实现原理,可以知道它是基于类级别的Handler实现本文将介绍它的另外一个系列:Abstr...
前言在前面分析Spring IoC容器的时候,贯穿全文的一个概念:Bean定义信息。它是Spring容器的一个核心概念,那么本文就深入分析一下BeanDefinition这个接口(类)。Spring容器启动的过程中,会将Bean解析成Spring内部的BeanDefinition结构。不管是是通过xml配置文件的\<Bean>标签,还是通过注解配置的@Bean,它最终都会被解析成...
前言@PropertySource和@ImportResource或许很多人都用过,并且都还没有用错。但是若真把他俩拿过来一起的时候,却有点傻傻分不清楚了。是的,他俩都是向容器中导入Bean/属性信息,但是使用起来还是有很大的区别的,因此本文主要针对于他俩的区别,从原理的角度做一个解释,希望大家以后能区分开来。可以记住一个通用的,适用于绝大部分场景的结论:@PropertySource用...
前言大家都知道,Servlet3.0是一次重要升级。可以全部采用注解驱动,大大简化了配置web.xml的麻烦。现在启动一个web容器并不依赖于web.xml配置文件了。然后我们印象深刻的是,之前我们在使用Spring MVC的时候,DispatcherServlet是必须要要在web.xml里配置,现在没有了这个,我们该怎么办呢?本文主要以全注解驱动整合Spring MVC(注意:非Spri...
前言在上一篇文章:【小家Spring】Spring IOC容器启动流程 AbstractApplicationContext#refresh()方法源码分析(一)中已经介绍了前五步,现在Spring IOC容器的工厂环境已经都准备好了。Bean工厂可以简单理解为一个钩子容器,里面注册有众多的BeanFactoryPostProcessor以及BeanFactoryPostProcessor,接..
前言最近在编写Spring相关博文的时候,发现有不少小伙伴对口头上经常说到的Spring容器、父子容器等等概念,既熟悉,又默认。大体知道它是干啥的,但是却有不太能知道所以然因此本文自己也本着一个学习的态度,主要介绍Spring容器(父子容器)的启动过程。由于我们有web.xml配置文件的方式以及这里讲到过的全注解驱动的方式,因此本文都分开来讲述。备注:本文讲述不包括Spring Boot中...