后端
文章平均质量分 54
这个世界太疯狂了
这个作者很懒,什么都没留下…
展开
-
springmvc参数解析ArgumentResolvers
待整理原创 2022-05-31 10:06:03 · 464 阅读 · 0 评论 -
Spring Security
Spring Security文章目录Spring Security认证过程认证过程https://www.cnblogs.com/xz816111/p/8528896.htmlhttps://www.cnblogs.com/ymstars/p/10626786.html原创 2021-09-23 13:46:33 · 137 阅读 · 0 评论 -
单例设计模式
文章目录1.懒汉式2.饿汉式3.单例模式的扩展为了节省内存资源、保证数据内容的一致性,对某些类要求只能创建一个实例,这就是所谓的单例模式。单例模式有 3 个特点:单例类只有一个实例对象;该单例对象必须由单例类自行创建;单例类对外提供一个访问该单例的全局访问点。单例模式是设计模式中最简单的模式之一。通常,普通类的构造函数是公有的,外部类可以通过“new 构造函数()”来生成多个实例。但是,如果将类的构造函数设为私有的,外部类就无法调用该构造函数,也就无法生成多个实例。这时该类自身必须定义一个静原创 2021-07-16 15:54:03 · 117 阅读 · 0 评论 -
软件是如何驱动硬件的?
软件的本质是代码和数据,代码和数据最终都是以二进制的形式存储,二进制就是01011101101001010这种数字串,为什么二进制串就能控制硬件呢?其实一直就没有二进制这种东西,机器也不知道二进制这种东西,它也识别不了,机器只能“识别”电压的高低,高电压的时候某个开关开了或者关了,低电压的时候另外一个开关开了或者关了,这就导致某个灯亮了,某个灯灭了,把电脑的显示器想象为很多个LED灯,最终呈现出来的效果可能就是屏幕上出现了一个字,一个动画。我们按一下键盘或者点击一下鼠标,实际上是给机器发出了一串电压信号。转载 2021-07-03 15:56:12 · 3474 阅读 · 0 评论 -
Lambda表达式,函数式编程,方法引用
先导知识//函数式接口public interface TestClassInterFace { public void call();}class TestCallImpl{ public static void callImpl(){ System.out.println("实现成功"); } /** TestClassInterFace 中只有一个 call() 抽象方法,无参 TestCallImpl 提供一个相应的无参方法来做实现 只要原创 2021-06-24 18:23:58 · 105 阅读 · 0 评论 -
Spring容器10AOP JDK+CGLIB
源码参考:github上的code4craft/tiny-spring项目。tiny-spring-step-10-invite-cglib-and-aopproxy-factory文章目录tiny-spring-step-10-invite-cglib-and-aopproxy-factory源码解析切点(Pointcut)通知(Advice)相关方法的调用关系AOP代理测试源码解析警告:请参考github上的源码,不然理解起来比较困难。切点(Pointcut)和通知(Advice)整合到S原创 2021-05-31 15:04:52 · 112 阅读 · 0 评论 -
Spring容器bean生命周期方法
部分bean的生命周期方法文章目录部分bean的生命周期方法BeanPostProcessorBeanFactoryAwareBeanPostProcessor这个是容器级别的,也就是说对所有的bean初始化过程都会参与。public interface BeanPostProcessor { //初始化前执行 Object postProcessBeforeInitialization(Object bean, String beanName) throws Exception; //初始化原创 2021-05-28 11:22:26 · 366 阅读 · 2 评论 -
Spring容器07AOP
源码参考:github上的code4craft/tiny-spring项目。tiny-spring-step-7-method-interceptor-by-jdk-dynamic-proxy文章目录tiny-spring-step-7-method-interceptor-by-jdk-dynamic-proxy解析静态代理JDK动态代理事务案例解析必看参考:JDK动态代理上JDK动态代理中JDK动态代理下静态代理其实就是在代理对象内部调用了目标对象的方法。public int原创 2021-05-27 11:10:39 · 297 阅读 · 2 评论 -
spring容器IOC实现流程汇总图
源码参考:github上的code4craft/tiny-spring项目。原创 2021-05-26 11:27:50 · 139 阅读 · 0 评论 -
spring容器-06 applicationContext
源码参考:github上的code4craft/tiny-spring项目。tiny-spring-step-6-invite-application-context文章目录tiny-spring-step-6-invite-application-context源码分析ApplicationContextAbstractApplicationContextClassPathXmlApplicationContext测试源码分析ApplicationContextApplicationConte原创 2021-05-26 10:45:25 · 184 阅读 · 0 评论 -
spring容器-05自动注入bean
源码参考:github上的code4craft/tiny-spring项目。tiny-spring-step-5-inject-bean-to-bean文章目录tiny-spring-step-5-inject-bean-to-bean源码分析AbstractBeanFactoryAutowireCapableBeanFactory测试源码分析省略部分代码,可参考之前的文章。AbstractBeanFactorybeanDefinitionMap保存了beanDefinitionbeanD原创 2021-05-26 10:24:32 · 102 阅读 · 3 评论 -
spring容器-04 从xml中获取bean
源码参考:github上的code4craft/tiny-spring项目。tiny-spring-step-4-config-beanfactory-with-xml文章目录tiny-spring-step-4-config-beanfactory-with-xml源码解析BeanDefinitionReaderAbstractBeanDefinitionReaderXmlBeanDefinitionReader测试源码解析前面三篇bean的定义都是在Java中完成,现在改为从xml中解析获取be原创 2021-05-25 16:45:39 · 372 阅读 · 2 评论 -
spring容器-03 注入属性
源码参考:github上的code4craft/tiny-spring项目。tiny-spring-step-3-inject-bean-with-property文章目录tiny-spring-step-3-inject-bean-with-property源码解析BeanDefinitionPropertyValuesPropertyValueBeanFactoryAbstractBeanFactoryAutowireCapableBeanFactory测试源码解析BeanDefinition原创 2021-05-25 16:26:39 · 92 阅读 · 1 评论 -
spring容器-02自动装配bean
源码参考:github上的code4craft/tiny-spring项目。tiny-spring-step-2-abstract-beanfactory-and-do-bean-initilizing-in-it文章目录tiny-spring-step-2-abstract-beanfactory-and-do-bean-initilizing-in-it源码解析BeanDefinitionBeanFactoryAbstractBeanFactoryAutowireCapableBeanFactory原创 2021-05-25 10:58:22 · 263 阅读 · 1 评论 -
spring容器-01基本的容器
源码参考:github上的code4craft/tiny-spring项目。tiny-spring-step-1-container-register-and-get。源码解析文章目录tiny-spring-step-1-container-register-and-get。源码解析BeanDefinitionBeanFactory测试BeanDefinition一个bean对应一个beanDefinition。BeanFactorybeanfactory中维护了一个map,专门存储原创 2021-05-25 10:25:29 · 222 阅读 · 0 评论 -
加载resources目录下的文件
maven项目加载文件资源文章目录maven项目加载文件资源加载路径问题6种加载文件方法resources目录下放的静态资源,打包后都会放在classpath下面。在idea中打包后会放在target/classes目录下。加载路径问题public class PathProblem { public static void main(String[] args) { // 编译后,项目根路径,写法1 String url1 = PathProblem.cla原创 2021-05-07 10:04:23 · 2287 阅读 · 0 评论 -
公钥,私钥,数字签名,数字证书
参考文档参考一参考二图解:原创 2021-03-23 14:51:44 · 121 阅读 · 0 评论 -
强引用、软引用、弱引用、虚引用
强引用强引用是默认支持,当内存不足的时候,JVM开始垃圾回收,对于强引用的对象,就算是出现了OOM也不会回收对象。强引用是最常见的普通对象引用,只要还有强引用指向对象,对象就存活,垃圾回收器不会处理存活对象。一般把一个对象赋给一个引用变量,这个引用变量就是强引用。当一个对象被强引用变量所引用,它就处于可达状态,是不会被垃圾回收的,即使之后都不会再用到了,也不会回收。因此强引用是造成Java内存泄漏的主要原因之一。对于一个普通对象,如果没有其他引用关系,只要超过了引用的作用域或者显式地将相应的强引用赋.转载 2021-02-25 13:16:21 · 143 阅读 · 0 评论 -
static和final。接口和抽象类。
原创 2021-02-24 15:10:11 · 114 阅读 · 0 评论 -
多线程
线程的创建1.继承Thread2.实现Runnable3.使用FutureTask类来包装Callable实现类的对象,有返回值名词解析sleep不会释放锁,等待休眠时间结束wait会释放锁,等待其他线程唤醒join等待其他线程执行完成,等待其他线程执行完成yield释放CPU的占有权限,等待获取CPU使用权限线程通信同步方法同步代码块Lock锁...原创 2019-10-23 09:44:04 · 111 阅读 · 0 评论 -
Git使用
Git的使用文章目录Git的使用1.概念1.1集中式版本控制系统1.2分布式版本控制系统2.基本命令2.1配置2.2基本命令2.3分支2.4远程1.概念1.1集中式版本控制系统CVS/SVN集中式版本控制系统,必须联网才能工作,版本库用集中存放在中央服务器的,使用时,先从中央仓库拷贝到本地,写好后,再把代码推送到中央仓库。1.2分布式版本控制系统Git分布式版本控制系统根本没有“中...原创 2019-09-25 09:44:34 · 105 阅读 · 0 评论 -
java中的正则(2)
java中常用的正则处理操作public static void main(String[] args) { String str = "211abc"; String regx = "^2\\d{2}\\w*"; //匹配 boolean matches = str.matches(regx); ...原创 2019-09-20 08:58:08 · 178 阅读 · 0 评论 -
常见的时间处理要求
常用的类SimpleDateFormatDateCalenderLocalDate等常见需求获取当前日期获取当前日期时间戳将指定的时间字符串转为日期加减时间一段时间的集合时间比较大小...原创 2019-09-19 08:46:15 · 129 阅读 · 0 评论 -
java中的正则
将字符串中的叠词去除 String str = "erkkktyqqquizzzzzo"; /** (.)匹配任意字符 \\1反向引用组1 +次数为1次以上 匹配到k,\\1变为 kk,+变为kkk... */ String reg ="(.)\\1+"; //反向引用 Pattern p = Pattern.compile(reg); Matcher m = p.matche...原创 2019-09-18 17:52:06 · 179 阅读 · 0 评论 -
简单区分各网络协议之间的区别
比喻:如果TCP是高速公路,那么UDP可以是水路。其中,HTTP可以是小轿车;FTP可以是大货车;Telnet可以是皮卡;SMTP可以是SUV……这些都各自平稳可靠地跑在TCP这条高速公路上。同时,NTP可以是小汽艇;SNMP可以是普通轮船;TFTP可以是大邮轮;这些都在UDP这条水路上跑,只是路线和到达时间可能要任性一些。当然也有DNS这种水陆两栖车,在哪都能跑。你可能会有一些个性...原创 2019-09-02 11:08:33 · 1172 阅读 · 0 评论