#系列

密码应用技术系列之0:开篇

随着信息化进程的逐渐深入,信息安全问题逐渐变得非常重要。信息安全即是运用各种密码技术,保证信息的安全存储和传输。本系列将会逐一讲述密码学相关技术的应用,包括编码技术、摘要运算技术、对称加密技术、非对称加密技术和数字证书技术等。本文的主题是密码应用技术,不会对密码算法进行深入研究。密码算法原理深奥难懂,除非打算做算法设计...

Java多线程系列之:显示锁

一,Lock接口1,核心方法:  lock():获取锁  unlock():释放锁  tryLock(longtime,TimeUnitunit):尝试获取锁,可以设置超时时间2,示例代码publicclassLockDemo{//Lock是一个接口privateLocklock=newReentrantLock();...
代码星球 ·2021-01-30

Java多线程系列之:原子操作CAS

一,什么是原子操作?如何实现原子操作1,synchronized可以完成原子操作,他是给予阻塞的锁的机制,但是有问题:  如果被阻塞的线程优先级很高怎么办?  拿到锁的线程一直不释放锁怎么办?  有大量线程进行竞争,消耗cpu。还容易出现死锁  锁的粒度比较大,影响性能。二,CAS的原理(CompareAndSwap:...

Java多线程系列之:线程的并发工具类

一,Fork-Join1,定义:Fork-Join框架:就是在必要的情况下,将一个大任务,进行拆分(fork)成若干个小任务(拆到不能再拆时),再将一个个的小任务运算的结果进行join汇总。2,,Fork-Join体现了分而治之。什么是分而治之?规模为N的问题,当N<阈值,直接解决。当N>阈值,将N分解为k...

Java多线程系列之:线程间的通信

一,线程间的协作,如何来实现?1,轮询:难以保证及时性,资源开销很大2,等待和通知等待和通知的标准范式:  等待方:    要去获取对象的锁,    然后在循环里判断条件是否满足,不满足调用wait方法。    条件满足,执行业务逻辑  通知方:    获取对象的锁    改变条件    通知所有等待在对象的线程3,方...

Java多线程系列之:多线程一些基本概念

一,基础概念1,CPU核心数和线程的关系  CPU核心数:最早的cpu是单核的。后来出现了多核cpu(2核,4核)  CPU和线程的个数是1:1的关系。比如4核可以允许4个线程同时运行。后来intel提出了超线程的概念。使cpu和线程个数1:2。2,CPU时间片轮转机制  给每一个进程分配一个时间段,这个时间段就被称为...

Java多线程系列之:内存可见性

一,什么是可见性?1,可见性:一个线程对共享变量值的修改,能够及时的被其他线程看到。2,什么是共享变量:如果一个变量在多个线程的工作内存中都存在副本,那么这个变量就是这几个线程的共享变量二,Java内存模型(JMM)1,什么是Java内存模型?  它描述了java程序中各种变量(线程共享变量)的访问规则,以及在JVM中...

tomcat系列之六:Tomcat顶层组件

一,当启动Tomcat后,各个组件都做了什么当执行startup.sh脚本来启动Tomcat后,1,Tomcat本质上是一个Java程序,所以startup.sh脚本会启动一个JVM来运行Tomcat的启动类Bootstrap2,Bootstrap是初始化Tomcat的类加载器,并且创建Catalina3,Catali...

tomcat系列之五:Tomcat各个组件生命周期

一,Tomcat中各个组件的关系1,组件有大有小,大组件管理小组件。比如Server管理Service,Service管理连接器和容器2,组件有内有外,外层组件控制内层组件。比如外层组件连接器负责对外交流,外层组件调用内层组件完成业务功能二,创建组件的顺序先创建子组件,再创建父组件,然后把子组件注入到父组件中先创建内层...

tomcat系列之四:Tomcat架构(下)

一,容器Tomcat中有两个核心组件:连接器和容器。连接器处理Socket通信和应用层协议的解析,得到Servlet请求。容器负责处理Servlet请求。在Tomcat里,容器就是用来装载Servlet的。二,容器的层次结构Tomcat设计了4种容器,Engine,Host,Context,Wrapper。Tomcat...

tomcat系列之三:Tomcat架构

一,Tomcat要实现的两个核心功能:处理Socket连接,负责网络字节流与Request和Response对象的转化加载和管理Servlet,具体处理Request请求二,Tomcat设计了两个核心组件:连接器(Connector):负责对外交流容器(Container):负责内部处理三,Tomcat支持的多种I/O...

tomcat系列之二:Servlet规范

一,当Http服务器接收请求后,如何知道调用哪些java类来处理请求呢?  有些类可能就是用来封装变量的,有些类才是用来处理请求的。为了识别出那些具有处理请求的类,定义了一个接口,这个接口就叫Servlet接口,如果想要让业务类具备处理请求的能力,都必须实现这个接口,实现了接口的业务类叫做Servlet。二,对于特定的...

tomcat系列之一:基础巩固

一,什么是Web容器?1,Http服务器  早期的Web应用主要用于浏览新闻等静态页面,Http服务器(比如Apache,Nginx)向浏览器返回静态HTML,浏览器负责解析HTML,将结果呈现给用户。2,Servlet技术  需求:为了不仅仅浏览静态页面,还希望通过一些交互操作,来获取动态结果。那么可以通过让HTTP...

JavaWeb系列之:Servlet

一,什么是ServletServlet是在服务器上运行的小程序。一个Servlet就是一个Java类,并且可以通过请求-响应编程模型来访问这个在服务器内存里的Servlet程序。(Servlet可以指任何实现了Servlet接口的类。)二,编写一个Serlvet的步骤1,创建普通Java类,并继承HttpServlet...
代码星球 ·2021-01-30

JavaWeb系列之:监听器

一,监听器定义指专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监视对象发生变化时,立即采取相应的行动。Web监听器可以监听客户端的请求,服务端的操作。可以监听的对象有:ServletContex---->作用域:application(上下文对象,由容器创建和初始化,范围是整个应用,并且...
代码星球 ·2021-01-30
首页上一页...1112131415...下一页尾页