2019年10月5日
摘要: vi编辑器的三种模式 通常来说,vi编辑器有三种模式,分别是一般指令模式、编辑模式与指令行命令模式。 这三种模式的作用分别是: 一般指令模式(command mode) 以 vi 打开一个文件就直接进入一般指令模式了(这是默认的模式,也简称为一般模式)。在这个模式中, 你可以使用上下左右按键来移动光 阅读全文
posted @ 2019-10-05 22:30 houJINye 阅读(7976) 评论(0) 推荐(1)
摘要: 在前面的例子中,我们都是通过new Thread来创建一个线程,由于线程的创建和销毁都需要消耗一定的CPU资源,所以在高并发下这种创建线程的方式将严重影响代码执行效率。而线程池的作用就是让一个线程执行结束后不马上销毁,继续执行新的任务,这样就节省了不断创建线程和销毁线程的开销。 ThreadPool 阅读全文
posted @ 2019-10-05 22:26 houJINye 阅读(206) 评论(0) 推荐(0)
摘要: meta-annotation Java从JDK5.0开始便提供了四个meta-annotation用于自定义注解的时候使用,这四个注解为:@Target,@Retention,@Documented 和@Inherited。 @Target:用于描述注解的使用范围(即:被描述的注解可以用在什么地方 阅读全文
posted @ 2019-10-05 22:17 houJINye 阅读(244) 评论(0) 推荐(0)
摘要: SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。 服务端安装 visualsv 阅读全文
posted @ 2019-10-05 22:08 houJINye 阅读(194) 评论(0) 推荐(0)
摘要: maven中聚合和继承是两个概念,两者的目的是不一样的。聚合是为了方便的快速构建项目,而继承是为了消除一些重复的配置。 对于聚合模块来说,它知道有哪些模块被聚合了,但是那些被聚合的模块并不知道这个聚合模块的存在。 对于继承关系的父pom来说,它不知道哪些被聚合的模块,但那些被聚合的模块必须知道自己的 阅读全文
posted @ 2019-10-05 22:06 houJINye 阅读(564) 评论(0) 推荐(0)
摘要: maven生命周期(lifecycle)对构建的过程进行了抽象和统一,实际的工作是由对应的插件(plugins)来完成的。 maven生命周期 maven生命周期可以分为三个部分: clean生命周期 该周期的任务是清理项目,包含三个阶段: default生命周期 default生命周期定义了真正构 阅读全文
posted @ 2019-10-05 22:04 houJINye 阅读(211) 评论(0) 推荐(0)
摘要: 坐标 在maven中,任何构件都有明确定义的坐标。这些坐标是通过一些元素定义的,下面是nexus-indexer的坐标定义: groupId:定义当前maven项目隶属的实际项目,一般由公司前缀+隶属项目名称组成 artifactId:定义当前maven项目模块,一般由隶属项目名称+当前maven模 阅读全文
posted @ 2019-10-05 22:03 houJINye 阅读(336) 评论(0) 推荐(0)
摘要: 保存构件的地方即为repository(仓库)。 仓库的分类 maven仓库分为两类:本地仓库和远程仓库。 当maven根据pom中定义的坐标寻找构件时,首先在本地仓库中寻找,当找不到时再从远程仓库寻找,都找不到时抛出异常。 maven远程仓库还可进一步分类: 本地仓库 默认maven会在c盘创建一 阅读全文
posted @ 2019-10-05 21:58 houJINye 阅读(26013) 评论(0) 推荐(0)
摘要: 如果项目中使用到了MyBatis框架,那么使用通用Mapper和PageHelper分页插件将极大的简化我们的操作。通用Mapper可以简化对单表的CRUD操作,PageHelper分页插件可以帮我们自动拼接分页SQL,并且可以使用MyBatis Geneator来自动生成实体类,Mapper接口和 阅读全文
posted @ 2019-10-05 21:52 houJINye 阅读(662) 评论(0) 推荐(0)
摘要: 下载Nginx Nginx官网:http://nginx.org/en/download.html。网页提供了Nginx三种版本下载:开发版(Mainline Version)、稳定版(Stable Version)和过期版(Legacy Version)。Nignx提供Linux和Windows版 阅读全文
posted @ 2019-10-05 21:01 houJINye 阅读(488) 评论(0) 推荐(0)
摘要: 远程仓库是指托管在网络上的项目仓库,可能会有好多个,其中有些你只能读,另外有些可以写。同他人协作开发某个项目时,需要管理这些远程仓库,以便推送或拉取数据,分享各自的工作进展。 管理远程仓库的工作,包括添加远程库,移除废弃的远程库,管理各式远程库分支,定义是否跟踪这些分支,等等。 查看当前的远程库 使 阅读全文
posted @ 2019-10-05 20:29 houJINye 阅读(138) 评论(0) 推荐(0)
摘要: 对于任何一个文件,在 Git 内都只有三种状态:已提交(committed),已修改(modified)和已暂存(staged)。 1.已提交:表示该文件已经被安全地保存在版本库中了。 2.已修改:表示修改了某个文件,但还没有提交到暂存区。 3.已暂存:表示把已修改的文件已经放到暂存区了,下次提交时 阅读全文
posted @ 2019-10-05 20:27 houJINye 阅读(735) 评论(0) 推荐(0)
摘要: Git中,每次commit提交都会生成一个历史纪录。使用 git log 查看commit历史: 每个记录都有一个与之对应的commit id,所以可以使用命令git reset --hard commit_id来回退到相应的版本。除此之卡,在Git中,使用HEAD来代表当前版本,如需回退到前一个版 阅读全文
posted @ 2019-10-05 20:25 houJINye 阅读(135) 评论(0) 推荐(0)
摘要: 修改最后一次提交 如果提交后发现想要修改提交信息,可以直接使用 git commit --amend 命令,使用该命令后,Git会启动文本编辑器,然后可看到上次提交时的说明,编辑它确认没问题后保存退出,就会使用新的提交说明覆盖刚才的提交信息: 如果刚才提交时忘了暂存某些修改,可以先补上暂存操作,然后 阅读全文
posted @ 2019-10-05 20:23 houJINye 阅读(156) 评论(0) 推荐(0)
摘要: git branch命令不仅仅能创建和删除分支,如果不加任何参数,它会给出当前所有分支的清单: 带*表示当前所在分支。使用命令git branch -v则可以查看各个分支最后一个提交对象的信息: 使用命令git branch --merged可以查看哪些分支与当前分支进行了合并操作: 与之相反的命令 阅读全文
posted @ 2019-10-05 20:07 houJINye 阅读(105) 评论(0) 推荐(0)
摘要: 假设目前正在开发公司网站,并且使用Git管理项目代码,常见的流程大体如下: 1.开发公司网站。 2.为了开发某个新功能新建一个分支(假如叫develop),并在该分支上进行开发。 3.接到测试组的Bug反馈,返回主分支,新建一个新的分支(bugFix),在该分支上修复Bug,然后与主分支master 阅读全文
posted @ 2019-10-05 20:06 houJINye 阅读(386) 评论(0) 推荐(1)
摘要: Java 8之前的库对日期和时间的支持并不理想,为了解决这个问题,Java 8引入了一套全新的时间日期API,位于java.time路径下。 LocalDate LocalDate类型包含了年月日信息,下面举些LocalDate的使用示例: 可以使用LocalDate.now()获取当天的日期信息: 阅读全文
posted @ 2019-10-05 19:51 houJINye 阅读(135) 评论(0) 推荐(0)
摘要: 除了顺序流外,Java 8中也可以对集合对象调用parallelStream方法或者对顺序流调用parallel方法来生成并行流。并行流就是一个把内容分成多个数据块,并用不同的线程分别处理每个数据块的流。这样在使用流处理数据规模较大的集合对象时可以充分的利用多核CPU来提高处理效率。不过在一些情况下 阅读全文
posted @ 2019-10-05 19:50 houJINye 阅读(1087) 评论(0) 推荐(0)
摘要: 在上一节中,我们了解到终端操作collect方法用于收集流中的元素,并放到不同类型的结果中,比如List、Set或者Map。其实collect方法可以接受各种Collectors接口的静态方法作为参数来实现更为强大的规约操作,比如查找最大值最小值,汇总,分区和分组等等。 准备工作 为了演示Colle 阅读全文
posted @ 2019-10-05 19:49 houJINye 阅读(273) 评论(0) 推荐(0)
摘要: Java 8 中的 Stream 俗称为流,它与 java.io 包里的 InputStream 和 OutputStream 是完全不同的概念。Stream 用于对集合对象进行各种非常便利、高效的聚合操作,或者大批量数据操作。Stream API 借助于Lambda 表达式,极大的提高编程效率和程 阅读全文
posted @ 2019-10-05 19:38 houJINye 阅读(279) 评论(0) 推荐(0)