- 博客(28)
- 收藏
- 关注
原创 线程调度与上下文
写在开头的话对于一个CPU来说同一时刻只会有一个线程在运行,线程的切换实际上是上下文(context)的切换。何谓“上下文”,指某一时间点CPU寄存器和程序计数器中的内容。具体过程如下:当线程A要切换到线程B时,要先将A线程挂起同时其线程状态(CPU的状态)保存在内存中。然后CPU从内存中检索出线程B的状态并将其恢复到CPU寄存器中,与此同时程序计数器中也从指向A变更为指向B,接着线程B开始执行直至完毕。线程B执行完毕,程序计数器的指向又恢复到指向A。...
2022-02-24 11:58:57
252
原创 java-bean容器工具类
bean容器工具类import org.springframework.beans.BeansException;import org.springframework.context.ApplicationContext;import org.springframework.context.ApplicationContextAware;import org.springframework...
2020-05-04 09:37:18
228
原创 java-zip工具类
zip工具类import java.io.*;import java.util.ArrayList;import java.util.List;import java.util.zip.ZipEntry;import java.util.zip.ZipOutputStream;public class ZipUtil { private static final int B...
2020-05-04 09:30:00
606
原创 java-excel工具类
excel工具类import org.apache.poi.hssf.usermodel.*;import org.apache.poi.hssf.util.HSSFColor;import org.apache.poi.ss.util.CellRangeAddress;import java.io.FileOutputStream;import java.io.OutputStrea...
2020-05-04 09:26:28
2455
原创 java异或运算
java异或运算java异或运算符"^",将两个数转成二进制后,从高位到地位依次进行异或运算:相同得0,不同得1,最后再将异或运算的结果转为十进制数。1.例子3 ^ 10 = 9。3==>0011,10==>1010,0011^1010=1001,1001==>9。2.取数对例子public static void main(String[] args) { ...
2020-04-21 12:18:35
586
原创 spring cloud-搭建consul客户端并实现负载均衡
搭建consul客户端1.客户端搭建注册到注册中心pom依赖<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <ve...
2020-04-19 10:38:10
498
原创 spring cloud 搭建consul注册中心
spring cloud 搭建consul注册中心使用docker快速搭建下载consul安装包搭建使用docker快速搭建直接上命令# 拉取consul的镜像docker pull consul:1.6.4# 启动一个consul容器docker run -d -p 8500:8500 --name me_consul consul:1.6.4下载consul安装包搭建在c...
2020-04-19 10:22:19
168
原创 spring cloud-Eureka客户端注册
创建spring boot项目,添加两个基本依赖配置文件配置注册中心(即Eureka服务端)地址。spring.application.name=providerserver.port=1113# 注册中心地址eureka.client.service-url.defaultZone=http://localhost:1111/eureka先启动Eureka服务端,再启动Eu...
2020-04-13 07:32:59
221
原创 spring cloud-Eureka服务注册中心
服务注册谈服务注册,就不得不提到三个对象:服务注册中心,服务提供者,服务消费者。服务提供者在注册中心注册服务,服务消费者在注册中心订阅服务,这样,服务消费者就可以通过在注册中心获取的服务提供者的服务地址,通过远程调用(RPC)来使用服务。1.1 服务注册中心简而言之,服务注册中心提供:服务注册功能,服务订阅功能,维护服务列表。spring cloud中常用的注册中心有:Eureka, Zoo...
2020-04-11 09:20:37
151
原创 Java之可见性与原子性
一 CPU与主存的交互CPU有三级缓存,一般来说,一级缓存是单个核心独占的,二级缓存是两个核心共用,三级缓存是四个核心共用。所以,CPU的不同核心是可能用到的不是一个缓存。二 可见性-两个线程一个写变量A,一个读取变量A问题复现:线程1对变量A进行写操作放入主存,同时将该线程1(核心)所占用的缓存中的A的值也刷新。而线程2如果是要快速读取变量A,那线程2总是会读到自己所占缓存中的值,而线程2...
2020-03-05 11:01:04
335
原创 设计模式之模式分类
一 分类方法软件设计模式有两种分类方法,分别是按目的分类和按作用范围分类。二 按目的分类按目的分类又可以分为创建型模式、结构性模式和行为模式。1)创建型模式主要特点是“将对象的创建和使用分离”,用来描述“如何创建对象”。在GOF中提供了单例、原型、工厂模式、抽象工厂模式、建造者模式共5种。2)结构型模式用于描述“如何将类和对象按某种布局组成更大的结构”。GOF中提供了代理模式、适配器...
2020-03-03 11:13:28
985
原创 Linux包管理RPM/YUM
一 RPM1.查询已安装软件信息rpm -qa | grep -查看简要版本信息rpm -qi -查看详细信息rpm -ql -安装目标目录信息rpm -qf file -查询该文件属于哪个软件2.安装软件rpm -ivh3.卸载软件rpm -erpm -e --nodeps 强制卸载有依赖的软件二 YUM(自动管理依赖)yum list | grep 查询...
2020-02-28 18:11:59
146
原创 Linux服务管理
一 查看服务服务本质上是进程。1.setup2.ls -l /etc/init.d/二 启动停止服务centos6 servicecentos7 systemctl三 管理服务chkconfig --list | grep -查看服务自启动chkconfig --level 5 serviceName on/off -设置服务在某个运行级别下的自启动...
2020-02-27 09:45:00
113
原创 Linux进程管理
一 查看进程ps -aux | grepps -ef | grep二 结束进程kill -9 pid -结束一个进程killall name -结束相关父子进程
2020-02-26 17:27:06
136
原创 spring之框架策略
初读《spring实战》,就被她的初心所打动,也即是spring的4个策略:1.基于POJO的轻量级和最小侵入性编程;2.通过依赖注入和面向接口编程实现松耦合;3.基于切面和惯例进行声明式编程;4.通过切面和模板减少样板式代码。这四个策略也是直击Java企业级应用开发人员的痛点,更是能提现工业化时代模块化的思想以加快应用开发效率。 而关于“通过增强了简单老式Java对象的功能,...
2020-02-26 11:10:01
199
Linux定时任务
一 crontab指令crontab (-u username) [-l|-e|-r]cron服务提供crontab命令来设定cron服务的,以下是这个命令的一些参数与说明:crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数 crontab -l //列出某个用户cron服务的详细内容 crontab -r //删除没个用户的cron...
2020-02-22 11:42:13
162
原创 Linux权限
一 更改文件所有权chown user(:group) filechown user -R pathchgrp group file二 文件及目录权限drw-r–r-- 3 root root共有十位数,其中:最前面那个d代表的是类型: -普通文件,d目录,l软连接,x可执行文件中间那三个 rw- 代表的是所有者(user)拥有的权限 然后那三个 r-- 代表的是组群(grou...
2020-02-21 18:59:28
204
原创 Linux压缩与解压缩
一 gzip/gunzip(.gz)gzip压缩文件后不保留原文件二 zip/unzip(.zip)zip -r -递归压缩unzip -d -指定解压文件存放路径三 tar(.tar.gz)tar option(c-打包,v-显示详情,f-指定文件名,z-压缩,x-解压缩)tar -zcvftar -zxvf file.tar.gz -C path...
2020-02-21 17:49:43
161
原创 Linux指令find/locate/grep
一 find指令find path -name -根据文件名查找find path -user -根据文件所有者查找find path -size -根据文件名大小查找find path -mtime -根据最近修改时间查找find path -name -根据文件名查找二 locate指令updatedb -创建locatedb数据库locate file -查找f...
2020-02-21 17:07:39
219
原创 Linux指令history
一 history指令history -查看所有已执行指令history 10 -查看最近10条指令!12 -执行history列出的第12号指令
2020-02-20 14:56:18
150
原创 Linux指令head与tail
一 head指令head -显示前十行head -n 50 -显示前50行二 tail指令tail -显示末十行tail -n 50 -显示末50行tail -f -追踪文件追加更新
2020-02-20 14:51:59
340
原创 Linux输出重定向与追加
一 输出重定向(>)与追加(>>)ls -al dir > a.txt -输出ls命令返回的信息到a.txt中(覆盖写)ls -al dir >> a.txt -输出ls命令返回的信息到a.txt中(追加写)...
2020-02-20 12:15:16
1095
原创 Linux文件目录操作
一 查看ls -l 列出详情ls -al 列出所有文件详情(包含隐藏文件)二 新建操作mkdir 创建空目录mkdir -p 递归创建空目录touch 创建空文件三 删除操作rmdir 删除空目录rmdir -p 递归删除非空目录rm -rf 递归强制删除文件或目录四 拷贝操作cp 拷贝单个文件或空目录cp -r 递归拷贝指定目录及其下的所有目录和文件\cp 强...
2020-02-20 11:22:44
161
原创 Linux运行级别
一 linux运行级别介绍二 root用户找回密码非远程启动linux系统,长按Enter,选择第二项kenel再按enter,在最末行输入“空格1”,然后按b启动系统,进入单用户模式,在命令行下输入指令:passwd userName pwd...
2020-02-19 12:35:19
189
原创 Linux用户管理
一 超级用户/一般用户/用户组root/uid/gid二 用户管理1)添加用户useradd -g groupName userName2)删除用户userdel userName -保留家目录userdel -r userName -不保留家目录3)修改用户usermod -g groupName userName...
2020-02-19 11:32:40
125
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人