自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

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

原创 二分查找

二分查找必须要根据一个有序数组进行查找,数组的排序规则可以是正序或者倒序public class BinarySearch { public static void main(String[] args) { int arr[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} ; int index = binarySearch(...

2019-08-25 09:57:04 180

原创 快速排序

排序进行的前提条件是传入的左侧下标小于右侧,否则排序已经完成,首先需要选择一个标志数,根据这个数把数组分成两个数组,然后分别对这两个数组进行排序。public class QuickSort { public static void main(String[] args) { int arr[] = {1, 3, 2, 9, 6, 8, 4, 7, 5, 0...

2019-08-25 09:56:07 289

原创 读书笔记之网络

1.因为B根据自己的子网掩码,计算出A属于不同子网,跨子网通信需要默认网关的转发。而要和默认网关通信,就需要获得其MAC地址。B收到了A发出的ARP广播,这个广播查询的是B的MAC地址。这是因为在A看来,B属于相同子网,同子网通信无需默认网关的参与,只要通过ARP获得对方MAC地址就行了。这个包也表明默认网关成功地把B发出的ping请求转发给A了,否则A不会无缘无故尝试和B通信。B回复了A的ARP...

2019-08-25 09:54:30 264

原创 Spring源码分析之与WEB服务器衔接(下)

SpringMVC子容器的启动,也就是DispatcherServlet的初始化,它的父类HttpServletBean实现了servlet的初始化方法public final void init() throws ServletException { if (logger.isDebugEnabled()) { logger.debug("Initializing servl...

2019-08-22 20:25:13 231

原创 Spring源码分析之与WEB服务器衔接(上)

web服务器的配置文件是\webapp\WEB-INF\web.xml,这里面会配置两个Spring容器,父容器是通过监听ServletContextListener上下文事件通过ContextLoaderListener初始化并加载所需要的容器环境,子容器就是当初始化Servlet时加载用于MVC功能的容器环境。<?xml version="1.0" encoding="UTF-8...

2019-08-22 20:22:14 128

原创 Spring源码分析之组件扫描事件监听处理器

判断是否支持JPA来注册持久化bean处理器// Check for JPA support, and if present add the PersistenceAnnotationBeanPostProcessor.if (jpaPresent && !registry.containsBeanDefinition(PERSISTENCE_ANNOTATION_PRO...

2019-08-10 14:11:55 167

原创 Spring源码分析之组件扫描初始销毁必需处理

注册初始化销毁处理类InitDestroyAnnotationBeanPostProcessor,主要解析注解PostConstruct,PreDestroy,它实现了接口MergedBeanDefinitionPostProcessor,执行postProcessMergedBeanDefinition方法,进行bean定义合并处理public void postProcessMer...

2019-08-10 14:08:24 169

原创 Spring源码分析之组件扫描通用配置类

注册通用配置处理类CommonAnnotationBeanPostProcessor// Check for JSR-250 support, and if present add the CommonAnnotationBeanPostProcessor.if (jsr250Present && !registry.containsBeanDefinition(COMMO...

2019-08-10 14:04:40 343

原创 Spring源码分析之组件扫描自动装配类

注册注解装配bean处理类,默认注解有Autowired,Value,Injectif (!registry.containsBeanDefinition(AUTOWIRED_ANNOTATION_PROCESSOR_BEAN_NAME)) { RootBeanDefinition def = new RootBeanDefinition(AutowiredAnnotationBean...

2019-08-10 14:01:10 285

原创 Spring源码分析之组件扫描配置类(下)

bean定义解析完成后,验证是否有解析错误,创建配置类读取类do { parser.parse(candidates); parser.validate(); Set<ConfigurationClass> configClasses = new LinkedHashSet<ConfigurationClass>(parser.getConfigura...

2019-08-03 17:58:43 470

原创 Spring源码分析之组件扫描配置类(上)

创建配置类解析器// Parse each @Configuration classConfigurationClassParser parser = new ConfigurationClassParser( this.metadataReaderFactory, this.problemReporter, this.environment, this.resource...

2019-08-03 17:55:14 518

原创 Spring源码分析之组件扫描(下)

名字获取成功后,判断bean定义是那种类型,如果是注解类型的话,就解析以下这些属性static void processCommonDefinitionAnnotations(AnnotatedBeanDefinition abd, AnnotatedTypeMetadata metadata) { if (metadata.isAnnotated(Lazy.class.getName...

2019-08-03 17:51:22 331

原创 Spring源码分析之组件扫描(上)

关于组件扫描的标签是context,对应的命名空间处理类为ContextNamespaceHandler,可以使用注解ComponentScan,但是还是需要设置标签annotation-config,也可以直接使用标签component-scanpublic class ContextNamespaceHandler extends NamespaceHandlerSupport { ...

2019-08-03 17:47:49 229

空空如也

空空如也

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

TA关注的人

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