- 博客(21)
- 资源 (14)
- 收藏
- 关注
原创 重要学习资源网址
开发百宝箱 | Java 全栈知识体系在线进制转换page.h - arch/alpha/include/asm/page.h - Linux source code (v5.18.1) - Bootlin广东政务服务网https://zsjz.szlhq.gov.cn:8090/visitlhuagbxyjz操作系统-Linux The Linux Kernel Archives Linux Documentation Project Linux source code (v5.5-rc
2022-06-02 19:03:52
211
原创 存储器层次结构与高速缓存(程序性能优化探讨)
一、存储技术 计算机技术的成功很大程度上源自于存储技术的巨大进步。早起的计算机只有几千字的随机访问存储器。最早的IBM PC甚至于没有硬盘。1982年引入的IBM PC-XT 有10M字节的磁盘。到2015年,典型的计算机已经有3000000倍于PC-XT的磁盘存储,而且磁盘的容量以每年加倍的速度增长 随机访问存储器分静态存储SRAM、动态存储DRAM,两者都属于易失性存...
2019-10-10 01:20:18
1213
原创 Java 中NIO Channel、Buffer、Select 非阻塞式技术原理
Java IO(3)非阻塞式输入输出(NIO) 在上篇《Java IO(2)阻塞式输入输出(BIO)》的末尾谈到了什么是阻塞式输入输出,通过Socket编程对其有了大致了解。现在再重新回顾梳理一下,对于只有一个“客户端”和一个“服务器端”来讲,服务器端需要阻塞式接收客户端的请求,这里的阻塞式表示服务器端的应用代码会被挂起直到客户端有请求过来,在高并发的应用场景有多个客户端发起连接下非阻...
2019-10-07 20:36:09
424
原创 Spring IOC Bean的初始化&循环依赖问题的解决
前言在实际工作中,经常由于设计不佳或者各种因素,导致类之间相互依赖。这些类可能单独使用时不会出问题,但是在使用Spring进行管理的时候可能就会抛出BeanCurrentlyInCreationException等异常 。当抛出这种异常时表示Spring解决不了该循环依赖,本文将简要说明Spring对于循环依赖的解决方法。循环依赖的产生和解决的前提循环依赖的产生可能有很多种情况,例如:...
2019-09-28 23:46:47
256
原创 C语言编程基础
目录第一章:C语言编程基础C语言国际标准定义C语言标准库C程序的创建过程C语言国际标准定义 最新版本有ISO/IEC9899:2011文档定义,一般称为C11C语言标准库 标准库在一系列标准文件----头文件中指定,头文件的扩展名总是.h,为了使一组标准功能可用于C程序文件,只需要将对应的标准头文件包含进来。C程序的创建过程1、包...
2019-08-11 08:35:52
250
原创 深入分析Spring属性编辑器(默认属性编辑器和自定义属性编辑器)
在Spring配置文件或配置类里,我们往往通过字面值为Bean各种类型的属性提供设置值:不管是double类型还是int类型,在配置文件中都对应字符串类型的字面值。BeanWrapper填充Bean属性时如何将这个字面值转换为对应的double或int等内部类型呢?我们可以隐约地感觉到一定有一个转换器在其中起作用,这个转换器就是属性编辑器。一、 PropertyEditorPropertyEdit...
2018-06-22 05:03:41
8217
1
原创 Spring中转换器工作原理
1、在XML文件中配置ConversionServiceFactoryBean,启用conversion service2、容器初始化完成后调用AbstractApplicationContext.finishBeanFactoryInitialization()方法,将ID为conversionService的Bean赋值给conversionService属性3、ConversionServi...
2018-06-08 00:28:59
1658
原创 Spring中转换器的工作原理(snippingtool)
内置转换器的启用,首先在Spring的配置文件中配置Bean<bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean"/>
2018-06-07 23:38:10
628
原创 Spring AOP中通过JDK动态代理的实现原理
AOP相关概念advice 通知: 定义在切入点织入的行为逻辑(常用device有 BeforeDevice,AfterDevice,ThorwsDevice)pointcut 切点:决定Advice通知应该作用于那个连接点,也就是说通过Pointcut切点来定义需要增强的方法的集合通过观察Pointcut类的继承关系(向下关系),在Point cut的基本接口定义中可以看到,需要返回一个Meth...
2018-04-05 23:07:23
1559
转载 POJO/PO/Bean/JavaBean/PO/DTO/VO/BO的区别和联系
什么是JavaBean、bean? 什么是POJO、PO、DTO、VO、BO ? 什么是EJB、EntityBean?前言:在Java开发中经常遇到这些概念问题,有的可能理解混淆,有的可能理解不到位,特此花了很多时间理顺了这些概念。不过有些概念实际开发中并没有使用到,可能理解还不够准确,只能靠后续不断纠正了。◆◆◆什么是POJO ? POJO(Plain Old Java Object)...
2018-04-03 10:24:55
1189
1
原创 JDK动态代理原理分析
代理模式使用代理模式必须要让代理类和目标类实现相同的接口,客户端通过代理类来调用目标方法,代理类会将所有的方法调用分派到目标对象上反射执行,还可以在分派过程中添加"前置通知"和后置处理(如在调用目标方法前校验权限,在调用完目标方法后打印日志等)等功能。使用动态代理的五大步骤1.通过实现InvocationHandler接口来自定义自己的InvocationHandler; 2.通过Proxy.ge...
2018-03-22 23:19:44
247
原创 从源代码分析Spring处理property-placeholder原理
一、如何在Spring中将属性文件配置内容加载到环境中1.1、在Spring的XML配置文件中配置<context:property-placeholder/>,由于<context:property-placeholder/>命名空间为http://www.springframework.org/schema/context,通过命名空间名与处理程序的映射关系(Sping...
2018-03-12 12:10:55
789
原创 Linux服务上安装SVN全步骤
一、linux安装subversion1、执行yum install subversion命令2、输入rpm -ql subversion查看安装位置,如下图:可以看到 svn在bin目录下生成了几个二进制文件3、再输入/usr/bin/svnversion --version 就可以查看svn的版本 4、创建SVN版本库目录mkdir /home/
2017-11-12 14:25:33
440
原创 Spring.profiles多环境配置原理
配置项目Spring的profiles有两个变量可以配置spring.profiles.default 默认值,优先级低。当active没有配置时,使用此变量。spring.profiles.active 优先级高,指定当前容器使用哪个profile一般用法声明多profile如果使用spring的profiles机制,第一步要在applicat
2017-11-07 01:16:50
2788
原创 多图详解Spring框架的设计理念与设计模式
Spring作为现在最优秀的框架之一,已被广泛的使用,51CTO也曾经针对Spring框架中的JDBC应用做过报道。本文将从另外一个视角试图剖析出Spring框架的作者设计Spring框架的骨骼架构的设计理念,有那几个核心组件?为什么需要这些组件?它们又是如何结合在一起构成Spring的骨骼架构?Spring的AOP特性又是如何利用这些基础的骨骼架构来工作的?Spring中又使用了那些设计
2016-05-18 23:35:26
701
原创 Spring ResourceLoader.getResource() & getResources()的理解
关于Spring Resource的资源类型以及继承体系我们已经在上一篇文件粗略的说了一下。Spring加载Resource文件是通过ResourceLoader来进行的,那么我们就先来看看ResourceLoader的继承体系,让我们对这个模块有一个比较系统的认知。上图仅右边的继承体系,仅画至AbstractApplicationContext,由于Applicatio
2016-03-19 15:40:15
10302
转载 工作流引擎的设计与实现
工作流数据模型工作流数据结构工作流定义工作流实例it分类: 基于工作流的政务系统--设计 工作流引擎的作用是解释流程定义,创建、执行和控制流程实例。对于本项目研究来讲,工作流引擎要接受外部请求事件,并按照业务过程的需要执行响应动作。具体来讲,包括接受工作人员启动业务流程的请求,解释流程定义,创建新的流程实例以
2016-02-18 19:24:11
696
原创 Spring Bean属性说明
几个比较难理解的属性,在此重点介绍下作用及如何使用一、autowire属性值有1、byName 根据Bean定义时的“id"属性上指定的别名与Setter名称是否一致进行自动装配2、byType 根据PoJo的setXXX()方法所接受的类型判断bean定义文件是否定义有类似的类型对象进行自动装配3、constructor Spring容器比对容器中的B
2016-02-12 01:23:12
2244
转载 URL和URI的区别
URIs, URLs, and URNs首先,URI,是uniform resource identifier,统一资源标识符,用来唯一的标识一个资源。而URL是uniform resource locator,统一资源定位器,它是一种具体的URI,即URL可以用来标识一个资源,而且还指明了如何locate这个资源。而URN,uniform resource name,统一资源命名,是
2016-02-11 23:53:16
437
原创 网站高性能架构
一:不同视角下的网站性能1、用户视角的网站性能 从用户角度,网站性能就是用户在浏览器上直观感受到的网站响应速度快还是慢。用户感受到的时间,包括用户计算机和网站服务器通信的时间、网站服务器处理的时间、用户计算机浏览器构造请求解析响应的时间2、开发人员视角的网站性能 开发人员关注的只要是应用程序本身及相关子系统的性能,包括响应延迟、系统吞吐量、并发处理能力、系统稳定性等技术
2015-06-23 09:39:28
489
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人