摘要:
至此,学习三个域对象:ServletContext(web项目)、request(一次请求)、Session(一个客户端)!均有相同的方法!
从用户开始打开浏览器进行操作,便开始了一次会话,直至关闭浏览器为止结束。在此过程中,每次产生请求时均会产生一次cookie,同时会产生一个JESSIONID进入到客户... 阅读原文
2019-07-07 07:33:02 阅读(2758) 评论(0)
摘要:
Semaphore信号量通常做为控制线程并发个数的工具来使用,它可以用来限制同时并发访问资源的线程个数。
一、Semaphore使用
下面我们通过一个简单的例子来看下Semaphore的具体使用,我们同时执行10个计数线程,并定义一个Semaphore变量用来控制并发值,同一时间只允许两个线程并发执行;
... 阅读原文
2019-07-07 06:00:02 阅读(2421) 评论(0)
摘要:
垃圾收集(Garbage Collection,GC),它的任务是解决以下 3 件问题:
哪些内存需要回收?
什么时候回收?
如何回收?
其中第一个问题很好回答,在 Java 中,GC 主要发生在 Java 堆和方法区中,对于后两个问题,我们将在之后的内容中进行讨论,并介绍 HotSpot 的 7 个垃圾... 阅读原文
2019-07-07 00:27:22 阅读(2415) 评论(0)
摘要:
抽象工厂模式:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。
我们先回忆一下简单工厂模式的情形,有一个创建产品的接口,需要创建不同的产品时我们就需要创建多个工厂类。
//工厂接口
public interface IFactory {
//创建产品
Product c... 阅读原文
2019-07-07 00:00:02 阅读(3859) 评论(0)
摘要:刚到大三时前面两年荒废了 什么都没学到所以打算自学个编程 自己对Java非常感兴趣 就打算自学Java 但是一开始看书 有很多看不懂 非常苦恼 也打算过去培训 但是培训太贵了 最后打算还是先自学一段时间 不行再去培训 最后买了一套教程 觉得这套教程非常不错 老师讲解非常细致 通俗易懂 自学了几个月 终于学完后来找到工作... 阅读原文
2019-07-06 21:00:02 阅读(2419) 评论(0)
摘要:
1.Redis单进程:
单进程模型来处理客户端的请求。对读写等事件的响应是通过对epoll函数的包装来做到的。Redis的实际处理速度完全依靠主进程的执行效率。epoll是Linux内核为处理大批量文件描述符而作了改进的epoll,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序... 阅读原文
2019-07-06 19:35:03 阅读(2469) 评论(0)
摘要:
一. 安全性问题
线程安全的本质是正确性,而正确性的含义是程序按照预期执行
理论上线程安全的程序,应该要避免出现可见性问题(CPU缓存)、原子性问题(线程切换)和有序性问题(编译优化)
需要分析是否存在线程安全问题的场景:存在共享数据且数据会发生变化,即有多个线程会同时读写同一个数据
... 阅读原文
2019-07-06 19:25:02 阅读(2428) 评论(0)
摘要:
概述
前面我们已经分析了spring对于xml配置文件的解析,将分析的信息组装成 BeanDefinition,并将其保存注册到相应的 BeanDefinitionRegistry 中。至此,Spring IOC 的初始化工作完成。接下来我们将对bean的加载进行探索。
之前系列文章:
spring源码深度解析... 阅读原文
2019-07-06 17:37:03 阅读(3605) 评论(0)
摘要:
访问其他系统接口httpClient,但是都是同步的,同步意味当前线程是阻塞的,只有本次请求完成后才能进行下一次请求;异步意味着所有的请求可以同时塞入缓冲区,不阻塞当前的线程;
httpClient请求,访问其他系统可能无响应,锁死,访问请求上线种种问题,这些问题就像苍蝇嗡嗡嗡的在你耳边,那么解决他可... 阅读原文
2019-07-06 16:50:02 阅读(2911) 评论(0)
摘要:
内部类基本概念
可将一个类的定义置于另一个类定义的内部
内部类允许将逻辑相关的类组织在一起,并控制位于内部的类的可见性
甚至可将内部类定义于一个方法或者任意作用域内!
当然,内部类 ≠ 组合
内部类拥有其外围类 所有元素的 访问权
更有甚,嵌套多层的内部类能透明地访问所有它所嵌入的外围类的所有成员
一个典型的例子... 阅读原文
2019-07-06 15:30:01 阅读(2359) 评论(0)