09 2021 档案
摘要:ThreadLocal 多个线程访问同一个共享变量时特别容易出现并发问题,特别是多线程需要对共享变量进行写入时。为了保证线程安全,一般使用者在访问共享变量的时候需要进行适当的同步,如图 同步的一般措施是加锁,这就需要使用者对锁有一定的了解,这显然加重了使用者的负担,那么有没有一种方法可以做到,当创建
阅读全文
摘要:Windows使用WSL编译OpenJDK 安装Ubuntu以及配置国内镜像 首选确保windows10已经安装了ubuntu 更换ubuntu20.04国内镜像,这里我选择的是阿里云镜像 sudo vim /etc/apt/sources.list 将使用如下内容替换原先源 deb http://
阅读全文
摘要:守护线程与用户线程 Java中线程分为两类,分别为daemon线程(守护线程),user线程(用户线程)。在jvm启动的时候会调用main函数,main函数所在的线程就是一个用户线程,其实在JVM中有很多守护线程,比如垃圾回收线程。守护线程和用户线程有什么区别?区别之一就是当最后一个非守护线程退出的
阅读全文
摘要:线程死锁 什么是线程死锁?死锁指的是两个或两个以上的线程在执行过程中因为争夺资源而造成的互相等待的现象。在无外力的情况下,这些线程一直会相互等待而无法继续进行工作。如图: 在上图中,线程A已经持有了资源2,它同时还想申请资源1,线程B已经持有了资源1,它同时还想申请资源2,所以线程A和线程B就因为相
阅读全文
摘要:线程中断 java线程中断是一种线程间的协作模式,通过设置线程的中断标志并不能直接终止该线程的运行,而是被中断的线程根据中断状态自行处理。 void interrupted()方法:中断线程,例如,当线程A运行时,线程B可以调用线程A的interrupted()方法来设置线程的中断标志为true并立
阅读全文
摘要:让出CPU执行权的yield方法 Thread类有一个静态的yield方法,当一个线程在调用yield方法时,实际上就是暗示线程调度器请求让出自己的CPU使用,但是线程调度器可以无条件忽略这个暗示。 操作系统是为每个线程分配一个时间片来占有CPU的,正常情况下当一个线程把分配自己的时间片使用完后,线
阅读全文
摘要:关系数据库 关系数据库应用数学方法处理数据库中的数据。 关系数据库系统是支持关系模型的数据库。 关系数据结构以及形式化定义 关系:关系模型的数据结构非常的简单。关系模型中数据的逻辑结构就是一张扁平的二维表。 这里从集合论的角度给出关系数据结构的形式化定义。 域(domain):域是一组具有相同数据类
阅读全文
摘要:数据库概述 数据(data) 数据是数据库中存储的基本对象,数据可以是一切东西,例如数字,字符串,音频,文本,视频等等。 我们在这里给出统一的定义:**描述事物的符号记录称之为数据。**在日常生活中,我们可以用自然语言来描述一个事物。例如:李明同学,男,1995年5月生,江苏省南京市人,2013年入
阅读全文
摘要:sql server2019安装 首先去官网下载(下载express版本): 打开安装程序 选择自定义 更改一下安装目录,点击安装 等待安装 等安装完成后,出现如下页面 选择SQL Server独立安装或向现有安装添加功能 由于我之前安装过了,部分省略了 点击下一步 点击下一步 点击下一步 点击接受
阅读全文
摘要:让线程睡眠的sleep方法 Thread类有一个静态的sleep方法,当一个执行中的线程调用了Thread的sleep方法,调用线程就会让出指定时间的执行权,也就是在这期间不参与CPU调度,但是该线程持有的除了CPU以外的资源是不允许让出的,指定的睡眠时间到了后该函数会正常返回,线程就会处于就绪状态
阅读全文
摘要:等待线程终止的join方法 在项目实践中经常会遇到一个场景,就是需要等待某几件事完成之后才能继续往下执行,比如线程加载资源等等。 package com.heiye.learn1; public class JoinTest { public static void main(String[] ar
阅读全文
摘要:线程通知与等待 Java中Object类是所有类的父类,鉴于继承机制,Java把所有类都需要的方法放到了Object类里面。 wait()方法: 当一个线程调用一个共享变量的wait()方法的时候,该线程会被阻塞挂起,直到发生了下面几件事才返回: 其他线程调用了notify()方法或者notifyA
阅读全文
摘要:什么是线程 进程是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。线程则是进行的一个执行路径一个进程中至少含有一个线程,进程中的多个线程共享进程的资源。 操作系统在分配资源的时候是把资源分配给进程的,但是CPU资源比较特殊,它是分配给线程的,因此真正要占用CPU资源的是线程,线程
阅读全文
摘要:无线网络和移动网络 本章最重要的内容为 无线局域网的组成,分配系统DS(Distribution System)和接入点AP(Access Point)的作用。 无线局域网使用的CSMA/CA协议,(弄清楚与CSMA/CD的区别)和无线局域网MAC帧使用的几种地址。 移动用户在移动时怎样保持IP不变
阅读全文
摘要:改进“尽最大努力交付”服务 使互联网提供服务质量 服务质量QoS是服务性能的总效果,此效果决定了一个用户对服务的满意程度。 图中局域网表示两台主机H1,H2通过非常简单的网路(路由器R1和路由器R2)分别向另外两个主机H2和H4发送数据。连接R1和R2的链路带宽为1.5Mbit/s。现在考虑以下四种
阅读全文
摘要:系统安全:防火墙与入侵检测 防火墙 **防火墙(firewall)**是一种访问控制技术,通过严格控制进出网络边界的分组,禁止任何不必要的通信,从而减少潜在入侵的发生,作为系统的第二道防线。由于防火墙不能阻止所有入侵发生,作为系统的第二道防线,**入侵检测系统IDS(Intrusion Detect
阅读全文
摘要:Vue+elementui实现省区市三级联动+详细地址的输入 详细需求,需要手动更改用户所在的地址。 安装依赖项 npm install element-china-area-data -S 在组建中使用 import {regionData,CodeToText} from 'element-ch
阅读全文
摘要:P2P应用 P2P应用指的是具有P2P体系结构的网络应用,所谓的P2P体系结构就是在这样的网络中,没有固定的服务器,而绝大多数的交互都是使用对等方式通信(P2P)。 具有集中目录服务器的P2P工作方式 最早的P2P工作方式的是Napster软件。 用户X向Napster目录服务器查询(客户-服务器模
阅读全文
摘要:应用进程跨越网络的通信 系统调用和应用接口编程 大多数操作系统使用系统调用(System call)的机制在应用程序和操作系统之间传递控制权。又称之为应用编程接口API。如图6-27说明了多个应用进程使用系统调用的机制。 在讨论网络编程时常常把套接字作为应用进程和运输层协议的接口。如图6-28假定了
阅读全文
摘要:简单网络管理协议SNMP 简单网络管理的基本概念 网络管理包括对硬件,软件和人力的使用,综合与协调,以便对网络资源进行监视,测试,配置没分析,评价和控制。这样就能以合理的价格满足对网络的需求。网络管理通常称之为网管。 网络管理模型中的主要构件(如图6-21) 管理站(管理器):是整个网络管理系统的核
阅读全文
摘要:DHCP动态主机配置协议 连接在互联网上的计算机的协议软件需要配置的项目包括: IP地址 子网掩码 默认路由器的IP地址 域名服务器的IP地址 为了省去给计算机配置IP地址的麻烦,应当采用自动协议配置的方法,互联网上使用广泛的是动态主机配置协议DHCP(Dynamic Host Configurat
阅读全文
摘要:日期时间工具 获取当前时间(1) public class HDateAndTime { public static void main(String[] args) { //获取当前时间 Date date= DateUtil.date(); System.out.println(date); }
阅读全文
摘要:Convert 主要针对于java中常见的类型转化 java常见类型的转化 转化为字符串 public class HConvert { public static void main(String[] args) { int age=21; String agStr= Convert.toStr(
阅读全文
摘要:电子邮件 电子邮件概述 实时通信的电话有两个很严重的缺点: 电话通信的主叫和被叫必须同时在场。 有些电话常常不必要地打断被叫者的工作或者休息。 电子邮件(e-mail)是互联网上使用最多和最受欢迎的一种应用。电子邮件把邮件发送到收件人使用的邮件服务器,并放在其中的收件人邮箱(mail box)**中
阅读全文
摘要:关于java bean在后台\转化为json交给前台时间类型格式调整的方法: 首先要引入fastjson依赖。 在实体类上使用注解: @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8"),这里是精确到秒,如果只精确到天,就把上
阅读全文
摘要:超文本传输协议HTTP HTTP操作过程 HTTP协议定义了浏览器(万维网客户进程)怎么向万维网服务器请求万维网文档,以及服务器怎么把文档传送给浏览器。从层次的角度来看,HTTP是面向事物的应用层协议。 每个万维网网点都有一个服务器进程,,它不断地监听 TCP 的端口 80,以便发现是否有浏览器(即
阅读全文
摘要:远程终端协议TELNET TELNET是一个简单的远程终端协议[RFC 845],它是互联网的正式标准,用户使用TELNET就可以在其所在地通过TCP连接注册(登录)到远地的另一台主机上(使用主机名或者IP地址),TELNET能将用户的击键传到远程主机上,同时也能将远程主机的输出通过TCP连接返回到
阅读全文
摘要:文件传输协议 FTP概述 文件传输协议FTP(File Transfer Protocol)[RFC 959]是互联网上使用最广泛的文件传输协议,FTP提供交互式的访问,允许用户指明文件类型与格式,并允许文件是否具有存取权限等。FTP屏蔽了各计算机系统的细节,因而适合于在异构网络中任意计算机之间传送
阅读全文
摘要:域名系统DNS 域名系统概述 域名系统DNS(Domain Name System)是互联网使用的命名系统,用来把便于人们使用的机器名字转化为IP地址,域名系统就是名字系统。 很多应用层的软件经常直接使用DNS。计算机用户只是间接而不是直接使用域名系统。DNS为互联网的各种网络提供了核心服务。 用户
阅读全文
摘要:应用层的主要介绍 在运输层,我们已经学习了运输层为应用进程提供了端到端的通信服务,但不同的网络应用的应用进程之间,还需要有不同法人通信规则。还需要有应用层协议(application layer protocol),这是因为,每个应用层协议都是为了解决某一个问题。而这些问题的解决又必须通过位于不同主
阅读全文
摘要:VUE select元素动态的从后台获取到 <el-form-item label="选择店铺"> <el-select v-model="value" placeholder="请选择店铺"> <el-option v-for="item in storeInfoList" :key="item.
阅读全文
摘要:TCP流量控制 利用滑动窗口实现流量控制 我们总是希望数据传速能够更快一些,但如果发送方把数据发送的太快,接收方就有可能来不及接收,这样就会导致数据丢失,所谓的流量控制(flow control)就是让发送方的数据发送速率不要太快,要让接收方来得及接收,避免数据丢失情况的发生。 利用滑动窗口机制可以
阅读全文
摘要:Vue router中携带参数与获取参数 携带参数 query方式,就是?+&结构,例如/login?id=1 <router-link :to="{ name:'login',query:{id:1} }">登录</router-link> this.$router.push({ path: '/
阅读全文
摘要:1.Vue使用axios post方法发送json数据 <template> <el-aside> <el-form ref="form" :model="form" label-width="80px"> <el-form-item label="审核选择"> <el-switch v-model
阅读全文
摘要:超时重传时间的选择 在之前说到,TCP的发送方在规定的时间内没有收到确认就要重传已发送的报文段。这种重传的概念是很简单的,但重传时间的选择却是却是TCP最复杂的问题之一。 由于TCP下层是互联网环境,每个IP报选择的路由并不会相同,如果把超时重传时间设置的太短,就会引起很多报文段不必要的重传,浪费
阅读全文
摘要:TCP协议最主要的特点 TCP是面向连接的运输层协议。这就是说,应用程序在使用TCP协议之前,必须要建立TCP连接,且在传输完毕后,还要断开连接。 每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点(一对一),并且按序到达。 TCP提供全双工通信。TCP允许通信双方的应用进程可以在任何时候
阅读全文
摘要:@Configuration @WebFilter(filterName = "CorsFilte") public class CorsFilter implements Filter { @Override public void doFilter(ServletRequest servletR
阅读全文