08 2019 档案
摘要:tcp三次握手位于OSI七层协议(物理层、数据链路层、网络层、传输层、会话层、表示层、应用层)中的传输层,用于建立主机间可靠的连接。 连接中用于交互和确认是通过seq、ack等序号以及SYN、ACK等标志位。 三次握手: 第一次握手:客户端发送SYN(seq=j)包请求服务器连接,同时进入SYN-S
阅读全文
摘要:说volatile之前,了解JMM(Java内存模型)有助于我们理解和描述volatile关键字。JMM是Java虚拟机所定义的一种抽象规范,用来屏蔽不同硬件和操作系统的内存访问差异,让Java程序在各种平台下都达到一致的内存访问效果。JMM也可以称之为Java线程内存模型,也描述了Java线程在工
阅读全文
摘要:先来看看双重检测锁的实现以及一些简要的说明(本文主要说明双重检测锁带来的线程安全问题): 由于指令重排导致3,2的顺序调换以及处于多线程场景,会导致以下问题的出现首先第一个线程执行到了3号指令(instance变量被分配了地址,不为null了),但对象未初始化。此时!第一个或者第二个if语句进行判断
阅读全文
摘要:一、导入pom.xml文件相关的依赖并配置 以下是在application.xml中进行redis相关的配置(本文采用的springboot版本为2.1.7): 项目运行前记得启动redis的server服务器。。 二、配置Redis的set、get模板 这里配置了两个模板,一个是设置存放的值为St
阅读全文
摘要:一、pom文件中导入相关依赖 二、分别编写任务代码类 三、分别编写相关的scheduler类(也可以写在一个类里) 四、启动springboot即可查看任务执行情况 具体的执行时间可以自己设置:这里分别是4秒和6秒:
阅读全文
摘要:package com.ring2.test; /** * 定义一把枪中只能装满20颗子弹 * 当子弹数大于20颗时,生产者停止生产子弹,等待被唤醒 * 当子弹等于0颗时,消费者停止射击子弹,等待被唤醒 * */ public class Gun { private static int bulle
阅读全文
摘要:SpringMVC运行原理: 1、客户端发出一个http请求给web服务器,web服务器对http请求进行解析,如果匹配DispatcherServlet的请求映射路径(在web.xml中指定),web容器将请求转交给DispatcherServlet. 2、DipatcherServlet接收到这
阅读全文
摘要:恢复内容开始 Mybaits运行原理: 首先通过Mybatis中的Resources类获取主配置文件Mybatis.xml获取其流对象,构造SqlSesionFactoryBuilder对象并 调用build方法,将流对象作为参数传给build方法,build方法中通过调用XMLConfigBuil
阅读全文
摘要:一、导入相应jar包 此次ssm搭建使用的IDE为IDEA,采用maven作为项目管理工具。以下是SSM环境搭建所需要引入的简单jar包 <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactI
阅读全文

浙公网安备 33010602011771号