摘要: 最近在web项目中,客户端注册时需要通过邮箱验证,服务器就需要向客户端发送邮件,我把发送邮件的细节进行了简易的封装: 最近在web项目中,客户端注册时需要通过邮箱验证,服务器就需要向客户端发送邮件,我把发送邮件的细节进行了简易的封装: 在maven中需要导入: 1 <!--Email--> 2 <d 阅读全文
posted @ 2019-05-01 18:43 松饼人 阅读(490) 评论(2) 推荐(0) 编辑
摘要: ThreadLocal内部是用一张哈希表来存储: 看过HashMap的话就很容易理解上述内容【Java】HashMap源码分析 而在Thread类中有一个ThreadLocalMap 的成员: 所以不难得出如下关系: 每一个线程都有一张线程私有的Map,存放多个线程本地变量 每一个线程都有一张线程私 阅读全文
posted @ 2019-04-17 17:44 松饼人 阅读(1165) 评论(0) 推荐(1) 编辑
摘要: 使用:在src下新建一个test.properties文件如下: 执行解析: 结果如下: 阅读全文
posted @ 2019-04-17 17:36 松饼人 阅读(678) 评论(0) 推荐(0) 编辑
摘要: 接着上一篇,在上一篇完成了有关IOC的注解实现,这一篇用XML的方式实现IOC,并且完成AOP。 简易的IOC框图 注解的方式实现了左边的分支,那么就剩下右边的XML分支: XmlContext:这个类是也是AbstractApplicationContext的子类,和AnnotationConte 阅读全文
posted @ 2018-10-29 18:06 松饼人 阅读(618) 评论(0) 推荐(0) 编辑
摘要: 在这里我要实现的是Spring的IOC和AOP的核心,而且有关IOC的实现,注解+XML能混合使用! 参考资料: IOC:控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。其中最常见的方式叫做依赖注入(Depend 阅读全文
posted @ 2018-10-28 18:21 松饼人 阅读(1290) 评论(0) 推荐(1) 编辑
摘要: 上一篇介绍了HashMap的基本概念,这一篇着重介绍HasHMap中的一些常用方法:put()get()**resize()** 首先介绍resize()这个方法,在我看来这是HashMap中一个非常重要的方法,是用来调整HashMap中table的容量的,在很多操作中多需要重新计算容量。源码如下: 阅读全文
posted @ 2018-10-12 23:37 松饼人 阅读(747) 评论(0) 推荐(0) 编辑
摘要: 在JDK1.8后,对HashMap源码进行了更改,引入了红黑树。在这之前,HashMap实际上就是就是数组+链表的结构,由于HashMap是一张哈希表,其会产生哈希冲突,为了解决哈希冲突,HashMap采用了开链法,即对于用对象hashCode值计算哈希表数组下表时,当出现相同情况时,会在相同的地方 阅读全文
posted @ 2018-10-10 22:40 松饼人 阅读(487) 评论(1) 推荐(0) 编辑
摘要: 在C/S中,客户端会向服务器发出各种请求,而服务器就要根据请求做出对应的响应。实际上就是客户机上执行某一个方法,将方法返回值,通过字节流的方式传输给服务器,服务器找到该请求对应的响应方法,并执行,将结果再次通过字节流的方式传输给客户机!下面搭建一个简单的Request和Response分发器: 类标 阅读全文
posted @ 2018-10-05 18:51 松饼人 阅读(1815) 评论(0) 推荐(0) 编辑
摘要: 包扫描在框架中应用很广泛,在spring中,通过给自己的类加注解的方式,利用spring的包扫描,完成依赖注入。 对如下目录扫描 结果如下 阅读全文
posted @ 2018-10-05 18:46 松饼人 阅读(1044) 评论(0) 推荐(1) 编辑
摘要: 这是我们的XML文件,对其进行解析 结果如下 阅读全文
posted @ 2018-10-05 18:41 松饼人 阅读(331) 评论(0) 推荐(0) 编辑