- 博客(45)
- 资源 (11)
- 收藏
- 关注
原创 SpringBoot 之启动流程
SpringBoot旨在简化Spring应用程序的开发和部署。在本文中,我们将深入分析SpringBoot启动过程的源代码,并提供必要的解释和说明。
2023-04-23 12:37:05
656
原创 Spring之 @Configuration
我们将深入探讨 @Configuration 注解的底层原理,包括其与 Spring IoC 容器的集成、其对 Bean 的定义和装配的实现,以及其在 Spring 框架中的作用和用法。
2023-04-15 16:07:26
2512
原创 Spring 之事务及传播机制原理详解
Spring 框架提供了一个丰富的事务管理功能集合,包括事务传播机制,隔离级别等。本文将深入了解框架事务管理的底层原理,特别是事务传播机制的实现。
2023-04-14 13:08:45
542
原创 Spring 之 AOP 原理详解
AOP 是 Spring 框架中的一个核心概念。本文将介绍 Spring AOP的底层实现原理,并通过源代码解析来详细阐述其实现过程。
2023-04-13 10:06:28
1401
原创 Spring 之初始化前中后详解
在 Spring 的生命周期中,有三个重要的阶段,即初始化前、初始化、初始化后。文章将详细介绍这些阶段,并提供相应的源代码示例和扩展点。
2023-04-12 16:53:19
836
原创 Spring 之循环依赖
文中探讨了 Spring 框架是如何解决循环依赖的问题的,并分析了 Spring 框架的源代码,提供了一些示例来说明 Spring 框架如何解决循环依赖的问题
2023-04-11 12:36:38
519
原创 Spring 之依赖注入底层原理
本文详细介绍了 Spring 的依赖注入底层原理,通过本文的学习,我们可以更好地理解 Spring 的依赖注入机制,以及如何在实际开发中使用它来降低代码的耦合度,使代码更加灵活和可维护。
2023-04-10 10:39:10
541
原创 Spring 之 构造函数推断详解
构造函数推断是 Spring 中非常强大的能力,在本文中,我们将深入探讨 Spring 构造函数推断的底层原理,并解释Spring是如何实现它的。
2023-04-06 19:28:24
429
原创 Spring Bean生命周期详解
详细介绍了 Spring 中 Bean 的生命周期,包括 Bean 的实例化、属性赋值、初始化和销毁等步骤。同时,我们也通过一些源码示例来解析 Spring 是如何实现 Bean 的生命周期的。
2023-04-06 19:27:46
302
原创 Spring MVC 之 DispatcherServlet流程
DispatcherServle 负责接收客户端请求,然后将请求分派到相应的控制器进行处理,并返回响应结果,我们将深入了解 DispatcherServlet 的处理流程和源码解析
2023-04-04 10:27:22
747
原创 Spring MVC 之 ViewResolver
ViewResolver 是 Spring MVC 框架中一个重要的组件,用于将控制器返回的逻辑视图名称解析为具体的视图实现对象,最终呈现给用户的是具体的视图实现
2023-04-03 10:25:08
589
原创 Spring MVC 之 HttpMessageConverter
Spring MVC 为开发者提供了方便的开发方式和丰富的功能。其中,HttpMessageConverter 是Spring MVC中非常重要的一个组件,它负责准换客户端提交的请求数据
2023-03-31 10:01:20
713
原创 Spring MVC 之 MethodArgumentResolver
MethodReturnValueHandler 是 Spring MVC框架中的一个核心组件,用于处理控制器方法的返回值。
2023-03-30 17:18:35
783
原创 Spring MVC 策略模式之 MethodArgumentResolver
在 Spring MVC中,MethodArgumentResolver 扮演着非常重要的角色。它允许我们自定义参数解析器并将请求中的参数转换成方法参数,通过了解 MethodArgumentReso
2023-03-29 16:26:41
414
原创 Spring MVC 之适配器模式
本文将介绍 Spring MVC 如何使用适配器模式来将 HTTP 请求与控制器之间的接口进行转换,并介绍适配器的核心组件 HandlerAdapter 的作用以及基本原理
2023-03-28 10:29:03
659
原创 Spring MVC 启动之 Handler 揭秘
从 Spring MVC 的启动流程出发,逐一揭秘每一步的重要环节,本文将重点介绍 Handler 的类型以及用途,让大家有清晰的认识
2023-03-27 11:31:55
699
原创 Spring MVC 启动之 HandlerMapping
HandlerMapping 在 Spring MVC 中非常重要,起着请求分发起的作用,同时也是面试中经常被考察的知识点,一起来详细分析吧
2023-03-26 11:51:15
406
1
原创 Spring MVC 启动流程一览
Spring MVC 是我们最为熟悉的框架,但他的启动流程却少有人能理清,本文将简化纷繁复杂的逻辑,对整个流程抽丝剥茧,只讲述将最重点的内容!
2023-03-25 13:57:40
1606
原创 详解 JAVA 注解机制
Java 注解(Annotation)是 Java 语言中的一种元数据,它可以为 Java 代码提供额外的信息,可以提高代码可读性、可维护性、可靠性、可重用性、可扩展性
2023-03-24 09:43:36
490
原创 JAVA 注解机制
通俗的意思是为程序的元素(类、方法、成员变量)加上更直观更明了的说明(比如 @Override),这些说明信息是与程序的。得到变量后调用相应的类、方法、成员变量的对象的isAnnotationPresent方法判断是否使用了注解。调用相应的类、方法、成员变量的的getAnnotation方法得到相应的注解的对象。的功能,无论是基本的servlet还是常用的三大框架,里面都使用了注解,并且逐渐的代替了原本繁琐的配置,大大提高了编码效率。的频率多不多,注解对我们的帮助很大,能为我们节省很多工作。
2023-03-23 18:12:09
650
1
原创 ConfigurationClassPostProcessor 解析
ConfigurationClassPostProcessor 在AnnotationConfigEmbeddedWebApplicationContext构造方法中创建 在invokeBeanFactoryPostProcessors()步骤中执行 接口主要实现了BeanDefinitionRegistryPostProcessor BeanFactoryPostProcessor 接口 在启动的时候会先执行BeanDefinitionRegistryPostProces...
2021-01-18 20:06:36
182
原创 spring启动
new SpringApplication(AppBarrageRobotApplication.class) -->initialize -->deduceWebEnvironment() ---> webEnvironment (根据classPath下有没有"javax.servlet.Servlet","org.springframework.web.context.ConfigurableWebApplicationContext"来确定是不是web项目 )s.
2021-01-14 18:02:09
149
1
原创 Quartz Spring 定时任务
项目结构:MyJob就是我们要定时执行的任务:/** * 定时执行的任务 * @author hulujie * */public class MyJob { public void executeJob() { System.out.println("executeJob执行啦。。。"); }}quartz-context.xml的
2016-09-21 11:39:18
325
原创 Java JDK自带的压缩和解压API
最近在工作中遇到一系列对文件的操作问题,因此自己整理了一下。该工具能针对不同情况的目录结构进行压缩与解压缩,使用方法简单方便。import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java
2016-09-13 16:51:23
3001
原创 java多线程断点下载
package com.hlj.download;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.io.RandomAcces
2016-03-10 22:05:30
475
原创 java多线程下载
package com.hlj.download;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.io.RandomAccessFile;import java.net.HttpURLConnection;import java
2016-03-10 14:04:36
401
原创 安卓SocketIO+Node.js实现好友与好友间的实时聊天
1 基础SocketIo常用API(Node.js端)1)socket.broadcast.emit('name',json数据);所有接入的人都能收到信息,除了自己2)socket.emit('name',json数据);一般用于客户端向服务端发送信息3)socket.join('your room name');加入一个房间,可以理解为聊天室,好友与好友间就是相当于两个人的
2016-01-13 19:51:44
3258
2
原创 ptyhon学习之flask安装
1 安装easy_install 下载http://pan.baidu.com/s/1gdX7c3p 在cmd下运行 python ez_setup.py 即可自动安装2 安装virtualenveasy_install virtualenv3 创建一个独立的运行环境virtualenv 文件夹的名字(myenv)4 激活环境进入myenv目录下的Scripts目录
2016-01-11 20:05:59
584
原创 python学习之使用mysql
#-*- coding:utf8 -*-import MySQLdbimport sysreload(sys)sys.setdefaultencoding("utf-8")try: conn=MySQLdb.connect(host='localhost',user='root',passwd='r66t',db='mytest',charset='utf8',port=330
2016-01-11 19:04:04
301
原创 python学习之xpath基础
#-*-coding:utf8-*-from lxml import etreehtml = ''' 测试-常规用法 这是第一条信息 这是第二条信息 这是第三条信息 不需要的信息1 不需要的信息2 不需要的信息3
2016-01-10 20:08:45
538
原创 python学习之使用multiprocessing.dummy多线程爬虫
#-*- coding:utf8 -*-import requestsimport re# 导入正则表达式的模块from multiprocessing.dummy import Pool as ThreadPoolimport time#导入下面这几行用中文就不会出错import sysreload(sys)sys.setdefaultencoding("utf-8")d
2016-01-10 19:40:42
1296
原创 python学习之简单正则与爬虫
python正则表达式常用方法:http://www.runoob.com/python/python-reg-expressions.html技巧一:匹配xx123xx的123时,可以用xx(.*?)xx进行匹配 非贪心匹配#-*- coding:utf8 -*-import requestsimport re# 导入正则表达式的模块#导入下面这几行用中文就不会出错impo
2016-01-09 23:22:53
554
原创 python学习之模块
#计算机只认识二进制的机器码,所以执行python模块的时候有两种执行方式,#一种是先编译成二进制再执行#另一种是直接执行二进制 省去了编译这一步所以相对会快一些#将模块直接编译成二进制的过程叫做字节编译,会生成一个.pyc的文件#.pyc文件就是经过编译后的模块对应的二进制文件 以后反编译会用得着#生成.pyc文件#1 直接运行 import 模块 如果系统找不到对应的.pyc文
2016-01-08 20:02:32
263
原创 python学习之函数
#-------------自定义函数 -----------def myFunction(string): print string#使用myFunction("helloddd")#--------------自定义有返回的函数--------------def myFunction(string): print string return 1#使用
2016-01-08 15:40:51
276
原创 python学习之序列化
#pickle 序列化import pickle#使用dumps(obj)将对象序列化lista = ["hello","world"]listb = pickle.dumps(lista)#print listb#使用loads(string) 反序列化listc = pickle.loads(listb)#print listc#使用dump(obj,file) 将对象
2016-01-08 14:33:15
253
原创 python学习之数据类型
#--------------字符串--------------------print "hello" #helloprint 'hello' #helloprint "hello 'world'" #hello 'world'print 'hello "world"' #hello "world"print 'hello \'world\'' #hello 'world'print
2016-01-08 13:44:26
288
原创 python学习之常量
python本身没有提供常量的的功能,需要自己编写并在python的安装目录下的Lib目录中导入。1 编写常量功能:# Filename: const.py # 定义一个常量类实现常量的功能 # # 该类定义了一个方法__setattr()__,和一个异常ConstError, ConstError类继承 # 自类TypeError. 通过调用类自带的字典__dict__,
2016-01-07 22:19:37
323
原创 最长公共字符串
具体细节看上一篇package com.hlj.test;public class Main { public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException { Main m = new Main();
2015-10-10 22:28:23
344
原创 详细描述求最长公共子序列算法
子序列与字串的区别:子序列不要求公共部分在原字符串中连续,而字串要求连续。动态规划求解:例子:"bdcaba", "abcbdab" 最长的公共子序列为 b c b a 和 b d a b1:首先分析状态转移数组dp[i][j]的含义:指的是 字符串 s1 从0到n-1 和 字符串 s2 从 0到m-1 的最大公共子序列的长度。如上面dp[0][0
2015-09-12 21:09:35
1178
原创 ISO七层协议
(一)物理层:定义了物理设备的标准,主要作用是接收和发送比特位。包括:IEEE802.3 CLOCK 集线器 中继器 网关(二)数据链路层链路指的是沿着通信路径两个相邻节点之间的通信信道。主要作用是将数据从一个节点移动到下一个节点,并提供错误侦测和纠正、流量控制、重发,确保数据的正确传输。数据的单位为 帧。包括:ATM MAC VLAN PPP 网桥 交换机
2015-09-11 15:12:29
792
Node.js开发指南_中文正版
2016-05-18
Node.js入门经典.2013
2016-05-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人