暂时未有相关云产品技术能力~
关注公众号:JavaEdge,后台回复面试,领取更多大厂求职资源。曾在百度、携程、华为等大厂搬砖,专注Java生态各种中间件原理、框架源码、微服务、中台等架构设计及落地实战,只生产硬核干货!
1 创建一个maven工程,这个应该都会 2 pom文件加入下面内容即可(版本号自己改 org.springframework.
# 默认redis不是以后台进程的方式启动,如果需要在后台运行,需要将这个值设置成yes # 以后台方式启动的时候,redis会写入默认的进程文件/var/run/redis.
常用命令 硬盘分区和格式化概述 image.png 在VM虚拟机添加硬盘 一路next即可 MBR分区 fdisk命令,接着根据提示操作即可 ...
操作模式 Commmand mode命令模式 等待用户输入命令 eg.撤销,剪切,复制 d:删除当前字符 dd:删除至行末 Insert Mode输入模式 Last Line Mode底行模式(也可归类为命令模式) 初始进入文件时为命令模式(底行模...
管道符“|”将两个命令隔开,左边命令的输出作为右边命令的输入。连续使用管道意味着第一个命令的输出会作为 第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推 文件管理 cp 复制文件或目录cp [options] source destcp [options] source... directory -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。
下载源码 执行命令wget http://download.redis.io/releases/redis-2.8.3.tar.gz 解压 将其移动到usr/local目录下并重命名为redis 4个CPU进行编译 make -j4 将编译后的文件添加到启动目录 make install 将程序安装至系统中。
1 Java中的阻塞队列 1.1 简介 一种支持两个附加操作的队列,是一系列阻塞队列类的接口 当存取条件不满足时,阻塞在操作处 队列满时,阻塞存储元素的线程,直到队列可用 队列空时,获取元素的线程会等待队列非空 阻塞队列常用于生产者/消费者场景,生产者是向队列里存元素的线程,消费者是从队列里取元素的线程.
为了解决多线程访问Integer变量导致结果不正确所设计的一个基于多线程并且支持原子操作的Integer类 AtomicInteger内部有一个变量UnSafe: Unsafe类是一个可以执行不安全、容易犯错的操作的一个特殊类 虽然Unsafe类中所有方法都是public的,但是这个类只能在一些被信任的代码中使用。
欢迎志同道合的小伙伴一起交流Java学习,共同应对校招 点击链接加入群【java编程技术交流】:https://jq.qq.com/?_wv=1027&k=4A14H0S 1 概述 本文将介绍Map集合的另一个常用类,Hashtable.
1 概述 集合是编程中最常用的数据结构。而谈到并发,几乎总是离不开集合这类高级数据结构的支持。比如两个线程需要同时访问一个中间临界区(Queue),比如常会用缓存作为外部文件的副本(HashMap)。
1 Java的指针Unsafe类 Java放弃了指针,获得了更高的安全性和内存自动清理的能力。但是,它还是在一个角落里提供了类似于指针的功能,那就是sun.misc.Unsafe类,利用这个类,可以完成许多需要指针才能提供的功能,例如构造一个对象,但是不调用构造函数;找到对象中一个变量的地址,然后直接给它赋值,无视其final属性;通过地址直接操作数组;或者是进行CAS操作。
public void testContainsKeyOrValue(){ Scanner sc = new Scanner(System.
首先:执行List list1 = new ArrayList(); 在堆内存开辟了一块空间,既然是new出来的,那我们直接从构造函数入手 Object[]数组,也就是说该数组可以放任何对象(所有对象都继承自父类Object) 继续,执行list1.
下载完成后,会有mysql-5.6.38-winx64.zip格式的压缩包,解压后把文件夹放在你喜欢的位置,然后将文件夹改名为mysql5.6,本教程的路径为D:\学习软件\mysql5.6,并复制你的mysql5.6里的bin路径,所以复制为D:\学习软件\mysql5.6\bin 2.首先配置环境变量,我的电脑右键,属性》点击高级系统设置 image 高级选项里选择环境变量,双击path,点击新建,粘贴你的bin路径,然后一路确定。
这里写图片描述 举个例子: 这里写图片描述 效果如下: 这里写图片描述
本文,我们介绍 HTTP/1.1 中可使用的方法。 1 GET:获取资源 用来请求访问已被 URI 识别的资源。 指定的资源经服务器端解析后返回响应内容。
HTTP 状态码负责表示客户端 HTTP 请求的返回结果、标记服务器端的处理是否正常、通知出现的错误等工作。让我们通过本文的学习,好好了解一下状态码的工作机制。
使用@CookieValue注解映射cookie值 @CookieValue 注解能将一个方法参数与一个HTTP cookie的值进行绑定,即可自动解析cookie。
@ResponseBody 注解与 @RequestBody 注解类似。 @ResponseBody 注解可被应用于方法上,标志该方法的返回值将被直接写回到HTTP响应体(Response)中去(而不会被放置到Model中或者被解析为一个视图名)。
控制器通常都会返回一个逻辑视图名,然后视图解析器会把它解析到一个具体的视图技术上去渲染。对于一些可以由Servlet或JSP引擎来处理的视图技术,比如JSP等,这个解析过程通常是由 InternalResourceViewResolver 和 InternalResourceView 协作来完成的,而这通常会调用ServletAPI RequestDispatcher.forward(..) 方法或 RequestDispatcher.include(..) 方法,并发生一次内部的转发(forward)或引用(include)。
InitializingBean接口为bean提供了初始化方法的方式,它只包括afterPropertiesSet方法,凡是继承该接口的类,在初始化bean的时候会自动执行该方法。
唯一接口方法作用 设置该对象在其中运行的ApplicationContext 通常这个调用将被用来初始化对象 在普通bean属性的装配之后但在初始回调例如InitializingBean#afterPropertiesSet()或一个自定...
本系列博文全部分析基于Spring4.0.0.RELEASE版本 先看一个Spring的最基本使用 LoginService.java public class LoginService { public void login() { System.
2 Spring IoC容器的设计 下图描述了IoC容器中的主要接口设计 这里写图片描述 简要分析: 从BeanFactory到HierarchicalbeanFactory再到ConfigurableBeanFactory是一条主要的BeanFactory设计路径.
epoll和select 假设你在大学读书,住的宿舍楼有很多间房间,你的朋友要来找你。 select版宿管大妈就会带着你的朋友挨个房间去找,直到找到你为止。
项目初始化 Shusheng Shi@PC-of-sss MINGW64 /h/mmall $ touch README.md Shusheng Shi@PC-of-sss MINGW64 /h/mmall $ touch .
Shusheng Shi@PC-of-sss MINGW64 ~/mmall/doc/mmall-fe (master) $ rm test.html Shusheng Shi@PC-of-sss MINGW64 ~/mmall/doc/mmall-fe (master) $ ls README.
1 检查是否已经存在ssh key 通常sshkey会默认生成在用户家目录下,所以查看家目录下是否存在.ssh 文件夹,以及是否存在相关目录就行。(~/.ssh/id_rsa) 2 生成key 在git bash中输入 控制台输出如下: 为了避免每次进行ssh连接时都需要输入passphrase,这里可以不用输入passphrase,一直回车 现在你的私钥被放在了~/.ssh/id_rsa 这个文件里,而公钥被放在了 ~/.ssh/id_rsa.pub 这个文件里。
添加.gitignore vi .gitignore 然后按下键盘的“i”键,输入 按下“esc”键,再输入“:wq”保存退出,此时“test”工程根目录多了一个“.
0 本地仓库 如果你已有一个项目,做了一些工作,并需要做版本控制,那么 来到这个项目目录下,在shell中输入 git init 这个目录就变成有git仓库的了,并且完全不会影响你现在的项目 这里写图片描述 也许你想更严谨点,每次建立...
首先确认设置了user.name和user.email 0 配置 用户信息 将user.name和user.email设置正确,为了保护知识产权,你必须要保证它们的正确性 这里写图片描述 1 配置 行尾和颜色 这里写图片描述 2...
0 首先看看有没有三大件 Git命令行工具 Git图形用户界面 github.com账号 这些工具都是自动更新的 1 设置Git版本 要想安装Git命令行工具,首先到如下网站看看(⊙o⊙)https://git-scm.
thymeleaf 是新一代的模板引擎,在spring4.0中推荐使用thymeleaf来做前端模版引擎。 thymeleaf介绍 简单说, Thymeleaf 是一个跟 Velocity、FreeMarker 类似的Java模板引擎,它可以完全替代 JSP 。
常用命令 gradlew build gradlew bootRun
/* Copyright 2002-2017 the original author or authors. Licensed under the Apache License, Version 2.
选择排序(selection sort) 每次找一个最小值。具体实现为每次在未排序数据中找到一个最值,并加到以排序数据首部或尾部。
解决的问题 避免人工修改的弊端,即容易犯错 轻松分环境编译,打包,部署 配置及原理 在pom.xml中增加build节点 在pom.
创建maven项目:mvn archetype:create 指定 group: -DgroupId=packageName 指定 artifact:-DartifactId=projectName 创建web项目:-DarchetypeArtifac...
Lombok对于Java开发者来说应该是比较中意的,Lombok框架提供了很多编码遍历,但是也降低了代码的阅读力。下面我们看看在Idea开发工具中该怎么使用Lombok? 首先需要添加maven坐标 org.projectlombok lombok 1.16.21 provided lombok的依赖仅仅只有一个,lombok基于配置在编译class文件时会自动将指定模板的内容写入。
项目相关 类加载器 JVM模型 java NIO 多线程synchronize(当前线程是否也无法进入其他sync方法)和volatile作用及实现原理 MySQL隔离级别,索引 spring事务 spring aop原理 mybatis原理 Linu...
NEW状态 实现Runnable接口和继承Thread可以得到一个线程类,new一个实例出来,线程就进入了初始状态 英文翻译过来是线程还是没有开始执行。
自我介绍 聊项目相关 聊聊基础 stringbuffer,stringbuilder区别 jvm内存模型 GC算法,项目中实现的GC算法??(不会实现) 聊聊java的锁synchronize和lock,说说读写锁 说说spring的重要特性(ioc)...
private class TrieNode{ /** * 标识当前结点是否是一个“关键词”的最后一个结点 * true 关键词的终结 false 继续 */ pr...
功能:保证数据正确的顺序,无措和完整 1 链路层概述 数据链路层使用的信道主要有以下两种类型 点对点信道 使用一对一的点对点通信方式 广播信道 使用一对多的广播通信方式,因此过程比较复杂。
自我介绍 算法: 打印给定数组元素的全排列 得出给定数组超过一半总量的元素,并分析复杂度 进程线程区别(OS层面) linux命令:打印中间一列 ab1 ab ab2 cd1 cd cd2 ef1 ef ef2 计算机网络基础 项目: 推拉模式 前缀树...
Docker 开发人员共同使用同一个 Docker 镜像,同时修改的源代码都被挂载到本地磁盘。不再因为环境的不同而造成的不同程序行为而伤透脑筋,同时新人到岗时也能迅速建立开发、编译环境。
1 域名,域名系统DNS 计算机的用户只是间接而不是直接使用域名系统。 因特网采用层次结构的命名树作为主机的名字,并使用分布式的域名系统 DNS。 名字到 IP 地址的解析是由若干个域名服务器程序完成的。
一、文件与文件系统 1.1 文件是什么 文件是对磁盘的抽象 所谓文件是指一组带标识(标识即为文件名)的、在逻辑上有完整意义的信息项的序列。 信息项:构成文件内容的基本单位(单个字节,或多个字节),各信息项之间具有顺序关系 文件内容的意义:由文件建立者和使用者解释 1.
请求分页存储管理方式 硬件的支持 1.页表机制 状态位P:用于指示该页是否已调入内存。 供程序访问时参考。 访问字段A:供选择换出页面时参考。 用于记录本页在一段时间内被访问的次数,或记录本页最近已有多长时间未被访问。
一、CPU调度的相关概念 1.1 cpu调度 其任务是控制、协调进程对cpu的竞争,即按一定的调度算法从就绪队列中选择一个进程,把cpu的使用权交给被选中的进程。