Servlet 解析请求 Servlet 解析请求 很多情况下,需要传递一些信息,从浏览器到 Web 服务器,最终到后台程序,浏览器使用两种方法可将这些信息传递到 Web 服务器,分别为 GET 方法和 POST 方法。 GET 方法 GET 方法向页面请求发送已编码的用户信息,页面和已编码的信息中间用 ? 字符分隔,如下所示: 1http://www.test.com/hello?key1=value1& 2024-03-17 Software Language Java JavaEE Servlet
Servlet 常用注解 Servlet 常用注解 @WebServlet 在servlet3.0以后,我们可以不用再web.xml里面配置servlet,只需要加上@WebServlet注解就可以修改该servlet的属性了。 下面是@WebServlet的属性列表。 属性名 类型 描述 name String 指定Servlet 的 name 属性,等价于 ,如果没有显式指定,则该 Servlet 的 2024-03-17 Software Language Java JavaEE Servlet
Servlet 生命周期 Servlet 生命周期 Servlet 生命周期可被定义为从创建直到毁灭的整个过程,以下是 Servlet 遵循的过程: Servlet 通过调用 init () 方法进行初始化。 Servlet 调用 service() 方法来处理客户端的请求。 Servlet 通过调用 destroy() 方法终止(结束) 最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的。 init 2024-03-17 Software Language Java JavaEE Servlet
Servlet 异常处理 Servlet 异常处理 当一个 Servlet 抛出一个异常时,Web 容器在使用了 exception-type 元素的 web.xml 中搜索与抛出异常类型相匹配的配置。 您必须在 web.xml 中使用 error-page 元素来指定对特定异常 或 HTTP 状态码 作出相应的 Servlet 调用。 web.xml 配置 假设,有一个ErrorHandler的 Servlet 在 2024-03-17 Software Language Java JavaEE Servlet
Servlet HttpServletResponse Servlet HttpServletResponse 正如前面的章节中讨论的那样,当一个 Web 服务器响应一个 HTTP 请求时,响应通常包括一个状态行,一些响应报头,一个空行和文档,一个典型的响应如下所示: 12345678910111213HTTP/1.1 200 OKContent-Type: text/htmlHeader2: ......HeaderN: ... (Blank 2024-03-17 Software Language Java JavaEE Servlet
Servlet Cookie 处理 Servlet Cookie 处理 Cookie 是存储在客户端计算机上的文本文件,并保留了各种跟踪信息,Java Servlet 显然支持 HTTP Cookie 识别返回用户包括三个步骤: 服务器脚本向浏览器发送一组 Cookie,例如:姓名,年龄或识别号码等。 浏览器将这些信息存储在本地计算机上,以备将来使用。 当下一次浏览器向 Web 服务器发送任何请求时,浏览器会把这些 Cookie 2024-03-17 Software Language Java JavaEE Servlet
Servlet 编写过滤器 Servlet 编写过滤器 Servlet 过滤器可以动态地拦截请求和响应,以变换或使用包含在请求或响应中的信息。 可以将一个或多个 Servlet 过滤器附加到一个 Servlet 或一组 Servlet,Servlet 过滤器也可以附加到 JavaServer Pages (JSP)文件和 HTML 页面,调用 Servlet 前调用所有附加的 Servlet 过滤器。 Servlet 过滤 2024-03-17 Software Language Java JavaEE Servlet
JSP 标准标签库(JSTL) JSP 标准标签库(JSTL) JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能。 JSTL支持通用的,结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签,除了这些,它还提供了一个框架来使用集成JSTL的自定义标签。 根据JSTL标签所提供的功能,可以将其分为5个类别。 核心标签 格式化标签 SQL 标签 XML 标签 JSTL 函数 2024-03-17 Software Language Java JavaEE JSP
NPM nrm NPM nrm nrm 是一个 NPM 源管理器,允许你快速地在如下 NPM 源间切换: 列表项目。 npm cnpm strongloop enropean australia nodejitsu taobao 安装 1$ npm install -g nrm 列出可用的源 123456789nrm ls npm ---- https://registry.npmjs.org/ c 2024-03-17 Software FrontEnd
NPM 命令 NPM 命令 新建项目 1$ npm init -y,--yes:表示默认选项都为yes 安装模块 npm不仅会安装当前包,如果该包有依赖其他模块,还会查找其依赖的所有模块,并一起安装,模块越复杂,需要安装的依赖就越多。 本地安装 模块安装成功后,就可以在本地目录node_modules目录中找到该模块; 所有依赖的模块同样被安装在该模块node_modules目录中。 1$ npm 2024-03-17 Software FrontEnd NPM
NPM package.json NPM package.json package.json 位于模块的目录下,用于定义包的属性。 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869{ "name&q 2024-03-17 Software FrontEnd NPM
Alibaba Sentinel 初始化 Alibaba Sentinel 初始化 pom.xml 1234<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId></dependency> 2024-03-17 Software DevOps Sentinel
Prometheus 原理 Prometheus 原理 Prometheus 是一个开源的系统监控和报警系统,现在已经加入到CNCF基金会,支持 exporter , PushGateway , Prometheus 能足够支撑上万台规模的集群。 Grafana 是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的指标数据查询然后可视化的展示。 node_exporter:Linux 类操作系统相关数据的采集程 2024-03-17 Software DevOps Prometheus
Docker 本地导入导出 Docker 本地导入导出 概述 docker save保存的是镜像(image),docker export保存的是容器(container) docker load用来载入镜像包,docker import 用来载入容器包,但两者都会恢复为镜像。 docker export导出的是一个容器的快照,不是镜像本身,也就是说没 layer,dockerfile 里的workdir,entrypoi 2024-03-17 Software DevOps Docker
Docker 架构 Docker 架构 Docker 包括三个基本概念: 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统,比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的 2024-03-17 Software DevOps Docker
Docker 初始化 Docker 初始化 Ubuntu 安装 Docker 在 Ubuntu 下对 Docker 的操作都需要加上 sudo,如果已经是 root 账号了,则不需要。如果不加 sudo, Docker 相关命令会无法执行。 在 Ubuntu 下安装 Docker 的时候需在管理员的账号下操作。 1$ wget -qO- https://get.docker.com/ | sh 安装完成之后, 2024-03-17 Software DevOps Docker
Docker 网络 Docker 网络 docker网络实现原理是通过veth-pair实现的,veth-pair是一对的虚拟设备接口,总是成对出现的,一段连接协议,另一段彼此相连,充当连接各种虚拟网络设备的桥梁。 所有的容器不指定网络的情况下,都是docker0路由的,docker会给我们的容器分配一个默认的可用IP Docker中的所有的网络接口都是虚拟的。 port 快捷地查看端口的绑定情况。 1$ d 2024-03-17 Software DevOps Docker
Docker Volume Docker Volume 创建 volume 1$ docker volume create vol_name 查看 volume 查看所有 volume 情况 1234$ docker volume lsDRIVER VOLUME NAMElocal portainer_data 查看 volum e信息 所有的docker容器内的卷,没有指定目录的情况下都是在/var/lib 2024-03-17 Software DevOps Docker
Docker Swarm Docker Swarm 概念 Docker Swarm 是 Docker 的集群管理工具,它将 Docker 主机池转变为单个虚拟 Docker 主机,Docker Swarm 提供了标准的 Docker API,所有任何已经与 Docker 守护程序通信的工具都可以使用 Swarm 轻松地扩展到多个主机。 节点 运行 Docker 的主机可以主动初始化一个 Swarm 集群或者加入一个已 2024-03-17 Software DevOps Docker
Docker Machine Docker Machine Docker Machine 是一种可以让您在虚拟主机上安装 Docker 的工具,并可以使用 docker-machine 命令来管理主机。 Docker Machine 也可以集中管理所有的 docker 主机,比如快速的给 100 台服务器安装上 docker Docker Machine 管理的虚拟主机可以是机上的,也可以是云供应商,如阿里云,腾讯云,AWS 2024-03-17 Software DevOps Docker