0%

Vim学习笔记

Vim三种模式

基本上vi分为三种模式,分别是一般模式、编辑模式与命令行模式

一般模式

打开一个文件默认就进入到一般模式(这是默认的模式)。在这个模式中你可以使用上下左右了来移动光标,你可以删除字符或者删除整行,也可以复制粘贴你的文件数据。

编辑模式

在vi一般模式下,不能进行编辑。等到按下a、s、i、o、c之后,就会进入编辑模式。左下方会出现INSERT或REPLAC的字样,此时才可以进行编辑。若想要退出编辑模式,需要按ESC。

命令行模式

在一般模式中输入,“:、/、?”3个中的任何一个按钮,就可以将光标移动到最下面那一行。

阅读全文 »

CURL是什么

CURL (Command Line URL viewer)是一种命令行工具,作用是发出网络请求,然后得到和提取数据,显示在“标准输出”(stdout)上面。

查看网页源码

直接在curl后面加上网址,就可以看到网页源码。

1
curl iisheng.cn

1
2
3
4
5
6
7
8
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html>
<head><title>301 Moved Permanently</title></head>
<body bgcolor="white">
<h1>301 Moved Permanently</h1>
<p>The requested resource has been assigned a new permanent URI.</p>
<hr/>Powered by Tengine</body>
</html>
阅读全文 »

RESTful是什么

REST(Representational State Transfe)是一种架构风格,遵循REST原则的架构我们就称为RESTful架构。Representational State Transfe 直译过来就是【表现层状态转化】,其实它省略了主语,表现层指的是【资源】的表现层,通俗的讲就是:资源在网络中以某种形式进行状态转移。

为什么要用RESTful

RESTful 给人的感觉是优雅、规范、易懂,一个结构清晰、易于理解的API完全可以省略许多无意义的沟通和文档。大家都使用相同的标准,有利于团队的整体效率。

接口设计

一般接口就是增删改查,RESTful API就像通用的模板,我们以文章(Article)举例,那么基础的URL就有一下几种:

  • GET /articles: 文章列表
  • GET /articles/id: 文章详情
  • POST /articles: 创建文章
  • PUT /articles/id: 修改文章
  • DELETE /articles/id: 删除文章

RESTful 中使用GET、POST、PUT和DELETE来分别表示资源的查询、创建、更新和删除,并且除了POST其他三种都具备幂等性(多次请求效果相同),POST和PUT最大的区别就是幂等性,所以PUT也可以用于创建,只要在创建前就确定好资源的id。

阅读全文 »

一个简单的Servlet请求

  1. 新建HelloController继承HttpServlet
  2. 在web.xml中,注册HelloController,或者使用@WebServlet注解注册HelloController
  3. 重写doGet(),doPost()或者其他doXxx()方法

Servlet请求参数

HttpServletRequest和HttpServletResponse是doXxx()方法的默认参数。

HttpServletRequest

HttpServletRequest代表浏览器发送给服务器的请求报文。该对象由web服务器创建(如Tomcat),最终作为参数传递到doXxx()或者其他方法中,我们可以在doXxx()方法中直接使用

  1. 获取用户发送的请求参数

    1
    request.getParmater("name");
  2. 获取项目的名字

    1
    request.getContextPath();
阅读全文 »

ElasticSearch 基本概念

节点(node)

一个节点是你集群中的一个服务器,作为集群的一部分,它存储你的数据,参与集群的索引和搜索功能。和集群类似,一个节点也是有一个名字标识。

索引(index)

一个索引就是一个拥有几个相似特征的文档集合。索引由一个名字来标识(必须全部小写字母)。

类型(type)

在一个索引中你可以定义一种或多种类型。一个类型是你逻辑上的分类/分区。

文档(document)

一个文档是可被索引的基本信息单元,文档以JSON格式来表示。

阅读全文 »

cd 进入指定目录

1
2
3
4
5
cd dir          // 进入当前目录的子目录
cd .. // 进入当前目录的上一级目录
cd / // 进入系统根目录
cd ~ // 进入当前用户主目录
cd /usr/local // 进入特定目录

ls 列出当前目录文件

1
2
3
4
5
6
ls -a   // 列出当前目录所有文件,包含隐藏文件
ls -l // 列出长数据串,包含文件的权限和属性 相当于 ll
ls -i // 显示文件节点索引号
ls -t // 按照修改时间,降序显示
ls -rt // 按照修改时间,升序显示
ls -alht // 按照修改时间,降序显示 h显示文件大小
个人感觉 ll -h 比较好用

mv 修改文件名字或移动位置

1
2
mv file newname         // 更改文件名字
mv /dir/file /otherdir // 移动文件位置

rm 删除

1
2
3
rm -rf dir  // 递归删除指定目录中的所有文件
rm file // 删除指定文件
rm -rf * // 递归删除当前目录中的所有文件
阅读全文 »