
JavaWeb
文章平均质量分 72
操作系统、多线程、网络相关
长不大的大灰狼
这个作者很懒,什么都没留下…
展开
-
<base> 标签
<base> 标签<base> 标签为页面上的所有链接规定默认地址或默认目标。将页面上路径中的${pageContext.request.contextPath}部分提取到页面开头。<head><basehref="http://${pageContext.request.serverName}:${pageContext.request.serverPort}${pageContext.request.contextPath}/"/><原创 2021-02-26 11:24:31 · 1097 阅读 · 1 评论 -
谈一下HTTPS的加密传输过程
1 前情提要(1)对称加密通信双方采用同样的密钥进行加密和解密。(2)非对称加密通信双方加密和解密使用不同密钥。假设两个用户要加密交换数据,双方交换公钥,使用时一方用对方的公钥加密,另一方即可用自己的私钥解密。2 HTTPS的加密过程HTTPS实际上就是HTTP协议先和SSL进行通信,再由SSL(443端口)和TCP进行通信,相当于在HTTP的身上披上了一层盔甲。具体过程:① 证书验证阶段:1)浏览器发起 HTTPS 请求;2)服务端返回 HTTPS 证书;3)客户端验证证书是否合法原创 2020-08-31 10:40:51 · 1046 阅读 · 0 评论 -
JavaWeb笔记10:I/O(File,文件遍历,字节流,字符流,序列化)
Input——Output绝对路径: 从根目录出发相对路径: 以当前文件夹出发描述一份文件得两类信息:1 元信息:文件名、路径、创建日期、权限等2 内容数据Java中描述文件的类:File1. 创建普通文件传入路径,构建文件对象:String path = "E:\\2020-03-20-Web-IO\\hello.txt";File file = new File(path)...原创 2020-03-21 11:22:40 · 316 阅读 · 0 评论 -
Java中的编码转换?
JDK1.6知道String类中getBytes(”编码“)方法可以将一个数用指定的编码转成一个字节数组,String中通过指定的charset解码指定的byte 数组,构造一个新的String。即指定编码转化为字节数组,让后再指定解码,对字节数组进行解码,代码如下: String s = "Hello world"; String result = new String(s.getBytes("GB2312"),"iso-8859-1");...原创 2020-08-15 10:28:11 · 198 阅读 · 0 评论 -
HTTP——超文本传输协议
文章目录HTTP——超文本传输协议Ⅰ HTTP 请求报文:1 请求行2 请求头部3 空行4 请求体5 请求实例(1)不带请求体:(2)带请求体:Ⅱ HTTP 响应报文1 状态行:2 响应头部:3 空行:4 响应体:5 响应实例Ⅲ HTTP原理1 HTTP 请求/响应的步骤:2 在浏览器地址栏键入URL,按下回车之后会经历以下流程:3 HTTP 无状态性4 HTTP1.1 持久连接HTTP——超文本传输协议超文本传输协议(Hypertext Transfer Protocol,HTTP)是应用层协议。H转载 2020-08-12 10:26:22 · 1481 阅读 · 0 评论 -
Java-正则表达式
Java-正则表达式常用正则表达式语法(1) 匹配开头结尾^ 匹配字符串开头$ 匹配字符串结尾(2) 匹配单个字符. 匹配任意1个字符(除了"\r\n")[ ] 匹配[ ]中列举的任一字符\d 匹配数字,等效于[0-9]\D 匹配非数字,等效于[^0-9]\s 匹配空白,即 空格,制表符等,等效于[\f\n\r\v]\S 匹配非空白,等效于[^\f\n\r\v]\w 匹配单词字符,包括下划线。等效于[A-Za-z0-9_]\W 匹配非单词字符,等效于[^A-Za-z0-9_]\原创 2020-07-25 10:26:19 · 179 阅读 · 0 评论 -
HTTP——断点续传(分块传输)
HTTP——断点续传(分块传输)断点续传:指的是在上传/下载时,将任务(一个文件或压缩包)人为的划分为几个部分,每一个部分采用一个线程进行上传/下载,如果碰到网络故障,可以从已经上传/下载的部分开始继续上传/下载未完成的部分,而没有必要从头开始上传/下载。可以节省时间,提高速度。断点续传的用途有时用户上传/下载文件需要历时数小时,万一线路中断,不具备断点续传的 HTTP/FTP 服务器或下载软件就只能从头重传,所以如果服务器或下载软件具有断点续传能力,允许用户从上传/下载断线的地方继续传送,这样就大大转载 2020-07-24 11:43:43 · 7883 阅读 · 0 评论 -
web项目配置
web项目配置web.xml在创建时就选中生成,其余的配置如Tomcat容器配置,数据库配置,自动编译,编码配置等基本上和Maven项目中的配置相同。1. 创建一个web项目项目名称:在WEB-INF下新建一个lib文件夹,用来存放第三方jar包。setting ->projec Structure ->Module选择刚创建好的lib文件夹:选中Jar Directory.选择lib and one more file,但是不要勾选。2. 配置Tomcat容器原创 2020-07-13 12:20:58 · 1293 阅读 · 0 评论 -
Windox/Linux常用网络调试命令
Windox/Linux常用网络调试命令文章目录Windox/Linux常用网络调试命令Ⅰ Windox1. ping 命令2. ipconfig 命令3. arp 命令(地址转换协议)4. netstat 命令(显示连接状态)Ⅱ Linux1. ping2. ifconfig3. netstat4. telnet5. traceroute6. hostⅠ Windox1. ping 命令ping命令主要用来检测网络是否连通。ping 能够以毫秒为单位显示发送请求到返回应答之间的时间量。如果应答时间原创 2020-07-10 15:00:32 · 664 阅读 · 0 评论 -
Maven项目中的Lombok插件使用
Ⅰ 安装Lombok插件点击File - > Settings -> Plugins查找lombok并安装。Ⅱ Maven项目中引入lombok依赖在pom.xml中加入lombok依赖。 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> &l原创 2020-05-22 09:06:21 · 1836 阅读 · 0 评论 -
Maven项目的IDEA配置
Maven项目的IDEA配置Ⅰ数据库连接配置(1)database面板中打开数据库驱动配置面板中没有database选项的,点击view->Tool Windows>Database。(2) 配置数据库驱动(3)打开数据库连接配置(4)数据库连接配置Ⅱ IDEA编码配置(1)打开Settings(2) 编码配置(3)自动编译设置点击shift+ctrl+alt+/键:Ⅲ 项目的web.xml生成(1)项目名称右键(2)复制wapapp所在路径(原创 2020-05-21 15:26:51 · 269 阅读 · 0 评论 -
Idea中jar包的打包及导入
1 在IDEA中 打jar 包(1) 选择Prject Structure 选项(2) 选择Artifacts,点击+,选择JAR 类型,From modules with dependencies(3) 根据需要,选择是否填充Main-Class(jar包的入口类)(4) 在Build 中选择Build Artifacts(5)jar包打包完成:2 Idea中使用jar 包(1) 选择Prject Structure 选项(2) 选择Libraries,点击+,选择Java原创 2020-05-13 15:24:50 · 920 阅读 · 0 评论 -
Java中的jar包的打包及导入
Java中的jar包的打包及导入1 jar包jar包(Java ARchive )是一种基本zip 格式的文件格式。目标是将java 生成的类文件、资源文件、管理文件等按照特定的结构打包成一个独立的文件,方便程序的发布或网络的下载。package com.glp;public class Hello { public static void sayHello(String target) { System.out.println("Hello " + target);原创 2020-05-13 13:04:59 · 970 阅读 · 0 评论 -
HTTP1.0、HTTP2.0、HTTP 3.0及HTTPS简要介绍
HTTP1.0、HTTP2.0、HTTP 3.0及HTTPS简要介绍1 HTTP1.0及HTTPSHTTP 建立之初,是为了将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。但随着CSS,Javascript的出现,以及移动互联时代的到来,我们不得不对HTTP进行不断地优化。HTTP优化:影响一个 HTTP 网络请求的因素主要有两个方面:带宽和延迟。随着网络基础建设的完善,带宽因素已经不需要再考虑,仅需要考虑的就是延迟。延迟主要受三个方面影响:浏览器阻塞(HOL blocking原创 2020-05-11 22:19:45 · 25038 阅读 · 3 评论 -
提高ip地址利用率及Ipv6
提高ip地址利用率及Ipv6网络号和主机号的划分与这个IP地址是A类、B类还是C类无关,CIDR在一定程度上缓解了IP地址不够用的问题(提高了利用率, 减少了浪费, 但是IP地址的绝对上限并没有增加). 这时候有三种方式来解决:动态分配IP地址(DHCP)NAT技术IPv61 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)1)简单的说就是由DHCP服务器为计算机随机分配IP地址等网络参数供该计算机使用,当该计算机关机断开网络时,该IP地址原创 2020-05-11 17:51:41 · 2245 阅读 · 0 评论 -
JavaWeb笔记19:数据链路层
数据链路层1 认识以太网“以太网” 不是一种具体的网络, 而是一种技术标准; 既包含了数据链路层的内容, 也包含了一些物理层的内容. 例如: 规定了网络拓扑结构,访问控制方式, 传输速率等; 以太网中的网线必须使用双绞线; 传输速率有10M, 100M, 1000M等;以太网是当前应用最广泛的局域网技术; 和以太网并列的还有令牌环网, 无线LAN等。2 以太网的帧格式源地址和目...原创 2020-05-01 12:36:42 · 244 阅读 · 0 评论 -
键入url时,数据在网络上的传输过程
数据在网络上的传输过程1 数据包的单次传输过程从应用层到数据链路层不断封装。(1)当输入url后,应用层的浏览器负责解析url. 使用socket连接服务器,开始三次握手,先封装成一个TCP的header:(2)TCP将数据发给IP层,IP层将其封装成IP packet。在网络层封装完毕后,需要在网络层决定发送到哪。根据本机管理的路由表和目的ip确定下一跳ip。数据链路层发送数...原创 2020-05-01 16:08:51 · 496 阅读 · 0 评论 -
JavaWeb笔记18:网络层(应用层协议DNS)
网络层主要负责在网络环境中确定一个合适的路径1 IP协议主机: 配有IP地址, 但是不进行路由控制的设备;路由器: 配有IP地址且能进行路由控制;节点: 主机和路由器的统称;IP数据报格式:4位版本号(version): 指定IP协议的版本, 对于IPv4来说, 就是4.4位头部长度(header length): IP头部的长度是多少个32bit, 也就是length * 4...原创 2020-05-01 12:00:20 · 1036 阅读 · 0 评论 -
使用wireshark抓包(三次握手过程)
使用以下代码尝试连接45.40.254.164:import java.util.*;import java.io.*;import java.net.*;public class TCPClient { public static void main(String[] args) throws IOException { System.out.println("...原创 2020-04-26 14:57:16 · 1538 阅读 · 0 评论 -
浅谈3次握手与4次挥手
浅谈3次握手与4次挥手在正常情况下, TCP要经过三次握手建立连接, 四次挥手断开连接当SYN标识位置1时,说明序列号SN用来同步信息的。当ACK置1时,说明确认序列号ASN是用确认信息的。服务端状态转化:[CLOSED -> LISTEN] 服务器端调用listen后进入LISTEN状态, 等待客户端连接;[LISTEN -> SYN_RCVD] 一旦监听到连接请求(同...原创 2020-04-26 12:57:54 · 240 阅读 · 0 评论 -
JavaWeb笔记17:TCP协议——详解
TCP(Transmission Control Protocol)TCP解包和分用:分用: 根据目的端口号解包: 不定长度(根据4位(1111)首部长度确定首部长度的具体大小)4位TCP报头长度: 表示该TCP头部有多少个32位bit(有多少个4字节); 所以TCP头部最大长度是15 * 4 = 606位标志位:URG: 紧急指针是否有效ACK: 确认号(ASN)是否有效PSH:...原创 2020-04-26 12:53:30 · 799 阅读 · 0 评论 -
JavaWeb笔记17:UDP协议(端口号)——详解
在TCP/IP协议中,用五元组来标识一个通信。五元组: 协议号(TCP/UDP),源IP,源端口号,目的IP,目的端口号,TCP 172.20.100.33 2001 172.20.100.32 80ip地址: 标识网络上的唯一一台设备。port端口号: 标识一台设备上的唯一一个进程。端口号范围划分:0 - 1023: 知名端口号, HTTP, FTP, SSH等这些广为使...原创 2020-04-26 12:45:00 · 4474 阅读 · 0 评论 -
Servlet开发的大体流程及注意事项!!!
Servlet项目开发的大体阶段分为:准备阶段>>>开发阶段>>>构建阶段>>>部署阶段>>>运行阶段注意事项:(1) Servlet项目准备阶段的框架配置,可以参考博客:Servlet项目配置,这一部分的主要工作是导入项目所需要的jar包,项目目录配置(Facets,Artifacts),及配置Tomcat启动项。(...原创 2020-04-21 12:43:16 · 247 阅读 · 0 评论 -
Java中json格式的数据使用
链接:Java中找jar包的一个网站这里我们需要导入这个阿里的json包;JSON格式:主要用来前后端分离,将前后端数据统一起来。基本用法:import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;public class Main { public static void ma...原创 2020-04-21 11:52:00 · 297 阅读 · 0 评论 -
了解JSP
JSP(JavaServer Pages)JSP(JavaServer Pages) 是由Sun Microsystems公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP将动态内容嵌入到静态的页面中,实现以静态页面为模板,动态生成部分内容的功能。JSP引入了被称为...原创 2020-04-21 11:25:37 · 1446 阅读 · 0 评论 -
浅谈cookie、session、Token
浅谈cookie && sessionHTTP是无状态协议,它不对之前发生过的请求和响应的状态进行管理。为了克服这一缺点,所以引入了cookie,session技术。当然无状态协议也有优点,由于不必保存状态,所以可以减少服务器的CPU及内存资源的消耗。关于cookie和session其实都是为了记录用户状态,它们的区别是cookie将状态信息保存在浏览器上,而session是将...原创 2020-04-16 20:18:22 · 271 阅读 · 0 评论 -
IP地址划分
IP地址划分1 IP地址分类(1)A类IP地址一个A类IP地址由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”,地址范围:1.0.0.1——126.255.255.254二进制表示为:00000001 00000000 00000000 00000001——01111110 11111111 11111111 11111110可用的A类网络有126个,每个网络能容纳...转载 2020-04-14 18:37:24 · 2147 阅读 · 0 评论 -
Servlet及Servlet处理HTTP请求和响应的方法
ServletJava Servlet 是运行在Web 服务器或应用服务器上的程序. 其主要功能在于交互式地浏览和修改数据,生成动态Web内容.狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,我们将Servlet理解为后者。Servlet常用API(了解):javax.servlet:其中包含定义Servl...原创 2020-04-11 16:30:23 · 6294 阅读 · 0 评论 -
JavaWeb15:Servlet项目配置
创建一个Servlet项目1 手动构建Servlet项目(1) 准备阶段: 准备开发用的目录结构,准备第三方依赖库(servlet-api.jar),并在IDEA中导入该jar包项目的目录结构:(2 )开发阶段: 开发静态资源index.html,开发动态资源,Sevlet类及web.xml配置(3 )构建阶段: 编译(build),打包(package)——手动将静态资源,动态资源放...原创 2020-04-10 21:59:38 · 811 阅读 · 0 评论 -
HTTP——状态码(转发和重定向)
状态码状态码的类别:状态码类别原因1XXInformational(信息性状态码)接收的请求正在处理2XXSuccess(成功状态码)请求正常处理完毕3XXRedirection(重定向状态码)需要进行附加操作以完成请求4XXClient Error客户端错误状态码服务器无法处理的请求5XXServer Error(服务器错误状态...原创 2020-04-09 08:55:26 · 3265 阅读 · 0 评论 -
JavaWeb笔记14:Tomcat 服务器(静态,动态资源访问)
Tomcat 服务器Servlet 的JavaEE 中指定了一套标准,目前主要的用途就是写web 应用(web application)。 Tomcat是一个免费的开源的Servlet容器,由于有了Sun的参与和支持,最新的Servlet和JSP规范总能在Tomcat中得到体现。Tomcat 服务器是一个开源的轻量级Web应用服务器,是开发和调试Servlet、JSP 程序的首选。1 Tom...原创 2020-04-05 17:41:39 · 1285 阅读 · 0 评论 -
JavaWeb笔记13:TCP/IP协议簇
局域网(Local Area Network)——LAN广域网(Wide Area Network)——WAN组网/联网设备:集线器(hub)交换机(switch)路由器(route)OSI(Open System Interconnection)七层协议(理论上的):应用层、表示层、会话层、网络层、传输层、数据链路层、物理层TCP/IP五层模型:TCP/IP是一组协议的代名词,...原创 2020-04-02 17:01:03 · 322 阅读 · 0 评论 -
JavaWeb笔记12:TCP(Transmission Control Protocol)应用
TCP(Transmission Control Protocol 传输控制协议)传输层协议有连接可靠传输:能够保证收到,收不到数据,会有相应的回应,一定是按照顺序接收的,数据可以分批次接收面向字节流面向字节流需要注意的问题:为了区分字节流中不同的请求,可以1)规定请求是固定长度2)规定先发送长度再发送请求3)使用特殊符号分割请求4)一个连接中,只发送一个请求(短连接)T...原创 2020-03-31 22:25:08 · 251 阅读 · 0 评论 -
JavaWeb笔记11:UDP(User Datagram Protocol )应用
UDP(User Datagram Protocol 用户数据报协议)传输层协议无连接不可靠传输:不保证数据是否发送成功,不保证数据报的接收顺序面向数据报:发送的一个报文表示一次请求UDP socket APIDatagramSocket类:DatagramSocket(int port,InetAddress laddr) 创建一个数据报套接字,绑定到指定的本地地址Datag...原创 2020-03-31 22:10:49 · 257 阅读 · 0 评论