- 博客(24)
- 资源 (17)
- 问答 (1)
- 收藏
- 关注
原创 2.Spring 循环依赖
Spring中循环依赖场景有:(1)构造器的循环依赖(2)field属性的循环依赖(注解注入和setter注入)。对于构造器的循环依赖:这种依赖spring是处理不了的,直 接抛出BeanCurrentlylnCreationException异常。对于单例模式下的setter循环依赖或者是注解注入:通过“三级缓存”处理循环依赖。而对于那些非单例循环依赖也是无法处理。我们知道Spring单例对象的初始化大略分为三步:createBeanInstance:实例化,其实也...
2020-07-13 14:00:55
187
原创 3.IOC容器
1.初始化过程Spring IOC容器启动初始化主要包括3个过程:BeanDefinition的Resouce定位、载入和注册第一个过程是Resource定位过程。这个Resource定位指的是BeanDefinition的资源定位,它由ResourceLoader通过统一的Resource接口来完成,这个Resource对各种形式的BeanDefInition的使用都提供了统一接口。对于这些BeanDefinition的存在形式,相信大家都不会感到陌生。比如,在文件系统中的Bean定义信息
2020-07-13 14:00:47
179
原创 1.AOP原理
在我们正常的面向对象的思维中, 我们考虑的是如何按照时间序列通过方法调用来实现我们的业务逻辑。那AOP(Aspect Oriented Programming)则是从另外一个角度来考虑整个程序的,AOP将每一个方法调用,也就是连接点作为编程的入口,针对方法调用进行编程。从执行的逻辑上来看,相当于在之前纵向的按照时间轴执行的程序横向切入,加入相关逻辑。所以,我的理解,AOP本质上是针对方法调用的编程思路,也就是面向切面编程的思路。实质可以用一句话概括:就是针对特定类的特定方法的特定执行时期织入特定的逻辑。
2020-07-13 14:00:02
510
原创 4.Spring bean的生命周期
Bean的完整生命周期可以认为是从容器创建初始化Bean开始,直到Spring容器关闭。主要包括3个阶段:Bean定义(加载解析)-------> Bean实例化------> Bean初始化具体来说的话:主要分为以下几个步骤:1.实例化bean对象,设置对象属性(按照Bean定义信息配置信息,注入所有的属性,)2.检查是否Aware相关接口并设置相关依赖3.bean实例的初始化:包括-> 检查是否是IniitializingBean以及决定是否调...
2020-07-13 13:59:37
140
原创 5.FactoryBean和BeanFactory的区别,说说你理解的BeanFactory
1.FactoryBeanFactoryBean和BeanFactory虽然名字很像,但是这两者是完全不同的两个概念,用途上也是天差地别。BeanFactory是一个Bean工厂,在一定程度上我们可以简单理解为它就是我们平常所说的Spring容器(注意这里说的是简单理解为容器),它完成了Bean的创建、自动装配等过程,存储了创建完成的单例Bean。而FactoryBean通过名字看,我们可以猜出它是Bean,但它是一个特殊的Bean,FactoryBean的特殊之处在于它可以向容器中注册两个Bea.
2020-07-13 13:58:39
591
原创 J2EE的13种核心技术
J2EE的13种核心技术一、JDBC(Java Database Connectivity) JDBC API为访问不同的数据库提供了一种统一的途径,象ODBC一样,JDBC对开发者屏蔽了一些细节问题,另外,JDBC对数据库的访问也具有平台无关性。二、JNDI(Java Name and Directory Interface) JNDI API被用于执行名字和目录服务。它提供
2015-07-13 12:18:09
686
原创 子网划分详解
首先了解一下:IP地址使用规则 网络号全为0的地址保留,不能作为标识网络使用;主机号全为0的地址保留,作为表示网络地址;网络号全为1,节点号全为0的地址表示子网掩码;主机号全为1的地址为广播地址,如172.16.255.255,称为直接广播或定向广播,表示对172.16.0.0中的所有主机进行广播,这类广播可以跨越路由器。地址0.0.0.0表示默认路由
2015-06-22 11:05:15
9325
原创 IP数据报转发算法 or 路由器转发分组的过程
首先我们来了解以下几个基本概念: 1、转发:表示的是为分组选择路径的过程 2、IP转发:其传统称法是IP路由选择(IP routing),IP转发它是为要发送的数据报选择路径。 3、分组:(大多数计算机网络都不能连续地传送任意长的数据,所以实际上网络系统把数据分割成小块,然后逐块地发送,这种小块就称作分组(packet)。也有些书籍把分组定义为网络层的协议数据单元)
2015-06-21 13:39:46
8331
原创 Linux初学者进阶学习资源整理
实验楼分享的Linux学习路径,用图文并茂的形式清晰直观的告诉了Linux初学者该如何从一个新手小白进阶成为Linux高手。
2015-06-10 15:47:39
2509
原创 wait()+notify实现java生产者-消费者
(一)、问题的引出有一个数据存储空间,划分为两部分,一部分用于存储人的姓名,另一部分用于存储人的性别;我们的应用包含两个线程,一个线程不停向数据存储空间添加数据(生产者),另一个线程从数据空间取出数据(消费者);因为线程的不确定性,存在于以下两种情况: 1.若生产者线程刚向存储空间添加了人的姓名还没添加人的性别,CPU就切换到了消费者线程,消费者
2015-06-07 20:12:09
1994
原创 java多线程(三)、线程的生命周期(状态)和线程的操作
三、线程的生命周期(状态)和线程操作(一)线程的生命周期(状态) 线程的生命周期(状态转移)图新建:当程序使用new创建一个线程
2015-05-31 16:12:03
2516
原创 java多线程(二):线程的实现
二、线程的实现Java中实现多线程代码有两种方式,其一:继承Thread类,其二:实现Runnable接口。下面将介绍这两中方式。1、实现(创建与启动)多线程方式之继承Thread类 格式: class 类名称 extends Thread { 属性......; 方法......; Public voi
2015-05-29 00:29:21
2221
原创 java多线程(一):进程与线程
一、进程与线程的基本概念1、进程:是指一个内存中运行的程序,比如说我们平时用的QQ程序QQ.exe。每一个进程都有自己独立的内存空间,一个进程中可以有多个线程。(在java的一个程序中,至少要有两个线程,一个是主线程,一个是称为垃圾回收的线程的后台线程) 2、线程:是指进程中的一个执行任务(控制单元),一个进程可以运行多个线程,多个线程可共享数据。 理解线程:都有过使
2015-05-28 15:22:43
1971
转载 Java中ArrayList和LinkedList区别
一般大家都知道ArrayList和LinkedList的大致区别: 1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。 2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。 3.对于新增和删除操作add和remove,LinedList比较占优势
2015-05-27 19:05:17
536
原创 java中set和get方法的理解使用
java中set和get方法的理解使用Java为什么会引入set/get方法?? 显然回答这个问题,我们需要了解封装 封装是保证软件部件具有优良的模块性的基础,封装的目标就是要实现软件部件的“高内聚、低耦合”,防止程序相互依赖性而带来的变动影响。在面向对象的编程语言中,对象是封装的最基本单位,面向对象的封装比传统语言的封装更为清晰、更为有力。面向对象的封装就
2015-05-22 20:11:42
49740
原创 java向上转型
java向上转型首先来了解一下下面的知识点: 1,转型是在继承的基础上而言的,继承是面向对象语言中,代码复用的一种机制,通过继承,子类可以复用父类的功能,如果父类不能满足当前子类的需求,则子类可以重写父类中的方法来加以扩展。 2,“动态绑定”也即后期绑定,意指在运行期间判断对象的类型并以此来判定去调用适当的方法。java属于后期绑定。在java中,几乎所有的方法都是后期绑定
2015-05-21 15:42:45
1860
原创 MTU与MSS关系
MTU与MSS的关系1,MTU: Maximum Transmission Unit 最大传输单元 首先看一下Ethernet帧的结构示意图: Ethernet帧的结构由6字节目标地址(48 bit)段、6字节的原地址段、2字节的type段、46-1500字节的数据段以及4字节帧尾CRC校验部分(FCS段)。这里说明一下前导符是是在物理层添加上去的,并不是
2015-05-15 10:36:39
1730
原创 网络号 子网号 主机号
网络号 子网号 主机号第一个例子:已知 IP:192.169.20.50 子网掩码:255.255.255.224 求网络号 子网号 主机号。首先子网掩码255.255.255.224转换为二进制位255.255.255.224:11111111.11111111.11111111.11100000可以看到这个掩码的左边三节与C类默认掩码相同,只有第四节与C类默认掩码不 同,
2015-05-14 18:49:43
9152
asm3+cglib2
2017-09-18
asm3.3相关jar包集合
2017-09-18
CGLIB2.2的jar包
2017-09-18
Netty权威指南
2016-08-16
关于mybatis多对多数据更新的问题
2016-03-28
TA创建的收藏夹 TA关注的收藏夹
TA关注的人