-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.xml
113 lines (101 loc) · 12.6 KB
/
index.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>我的第一个博客</title>
<link>http://pccmast.github.io/</link>
<description>Recent content on 我的第一个博客</description>
<generator>Hugo -- gohugo.io</generator>
<language>zh-Hans</language>
<lastBuildDate>Wed, 17 Mar 2021 19:43:05 +0800</lastBuildDate><atom:link href="http://pccmast.github.io/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Url</title>
<link>http://pccmast.github.io/posts/url/</link>
<pubDate>Wed, 17 Mar 2021 19:43:05 +0800</pubDate>
<guid>http://pccmast.github.io/posts/url/</guid>
<description>URL:Uniform Resource Locator 出现的都是ASCII字符,中文会被转码。
统一资源定位符, 包括协议、域名、路径、查询参数、锚点。
协议:代表访问的协议,一般为http或者https或者ftp等等
查询参数:与路径之间用问号分割。
host:主机名、域名
port:端口号:默认使用80端口(http协议)
锚点:浏览器用来做页面定位的
DNS: Domain Name System DNS是一个按层次结构排列的分布式系统,由许多DNS服务器组成。DNS服务器是注册加入DNS的任何计算机。它具有域名和IP地址的索引,并且在请求时,它可以告诉您与域名关联的当前IP地址。
输入nslookup命令,结果中的默认服务器就是 dns 服务器的域名和地址
nslookup 命令 nslookup 参数 domain [dns-server] dns-server:指定dns服务器,如果没有指定用自带的。
domain:要查询的域名或者ip地址
参数:-type -timeout 等等
IP协议 IP实现两个基本功能:寻址和分段。
IP可以根据数据报报头中包括的目的地址将数据报传送到目的地址,在此过程中IP负责选择传送的道路,这种选择道路称为路由功能。如果有些网络内只能传送小数据报,IP可以将数据报重新组装并在报头域内注明。IP模块中包括这些基本功能,这些模块存在于网络中的每台主机和网关上,而且这些模块(特别在网关上)有路由选择和其它服务功能。
ping命令 Ping 127.0.0.1 Ping回送地址是为了检查本地的TCP/IP协议有没有设置好
Ping本机IP地址 Ping本机IP地址, 这样是为了检查本机的IP地址是否设置有误
Ping网关地址 Ping本网网关或本网IP地址,这样的是为了检查硬件设备是否有问题,也可以检查本机与本地网络连接是否正常
Ping远程地址 (在非局域网中这一步骤可以忽略)Ping远程IP地址,这主要是检查本网或本机与外部的连接是否正常
## 域名
顶级域名
顶级域名(TLD, Top-Level Domain)可以告诉用户域名所提供的服务类型。最通用的顶级域名(.com, .org, .net)不需要web服务器满足严格的标准,但一些顶级域名则执行更严格的政策。比如:
地区的顶级域名,如.us,.fr,或.sh,可以要求必须提供给定语言的服务器或者托管在指定国家。这些TLD通常表明对应的网页服务从属于何种语言或哪个地区。 包含.gov的顶级域名只能被政府部门使用。 .edu只能为教育或研究机构使用。 Secondary Level Domain, 二级域名
刚好位于TLD前面的标签也被称为二级域名 (SLD)。一个域名可以有多个标签(或者说是组件),没有强制规定必须要3个标签来构成域名。例如,www.inf.ed.ac.uk 是一个正确的域名。当拥有了“上级”部分(例如 mozilla.org),你还可以创建另外的域名 (有时被称为 &ldquo;子域名&rdquo;) (例如 developer.mozilla.org).</description>
</item>
<item>
<title>Html Element</title>
<link>http://pccmast.github.io/posts/html-element/</link>
<pubDate>Tue, 16 Mar 2021 20:09:57 +0800</pubDate>
<guid>http://pccmast.github.io/posts/html-element/</guid>
<description>a 标签 当点击一个链接或按钮时,打开一个新的电子邮件发送信息而不是连接到一个资源或页面,这种情况是可能做到的。这样做是使用元素和mailto:URL的方案。 其最基本和最常用的使用形式为一个mailto:link (链接),链接简单说明收件人的电子邮件地址。例如:
&lt;a href=&quot;mailto:nowhere@mozilla.org&quot;&gt;向 nowhere 发邮件&lt;/a&gt;
真实案例: 每个字段的值必须是URL编码的。 也就是说,不能有非打印字符(不可见字符比如制表符、换行符、分页符)和空格 percent-escaped. 同时注意使用问号(?)来分隔主URL与参数值,以及使用&amp;符来分隔mailto:中的各个参数。
&lt;a href=&#34;mailto:nowhere@mozilla.org?cc=name2@rapidtables.com&amp;bcc=name3@rapidtables.com&amp;subject=The%20subject%20of%20the%20email&amp;body=The%20body%20of%20the%20email&#34;&gt; Send mail with cc, bcc, subject and body &lt;/a&gt; a标签的超链接还可以设置链接到QQ、迅雷、:
tencent://temp-chat?QQ=XXX? thunder://... href值还可以为空:当使用a标签来做按钮,不需要跳转时,href值即为空。
a标签的download属性 (HTML5) 此属性指示浏览器下载 URL 而不是导航到它,因此将提示用户将其保存为本地文件。如果属性有一个值(可以没有值),那么此值将在下载保存过程中作为预填充的文件名(如果用户需要,仍然可以更改文件名)。
如果同时有target=&quot;_blank&quot;与download=&ldquo;result.jpg&rdquo; 只会跳转到新的网页(只有target生效)
img 标签 img的src为空:当前地址
img的属性&lt;usemap=&quot;#&quot;&gt;用来做选座页面
usemap 属性将图像定义为客户端图像映射(图像映射image-map指带有可点击区域的图像)。 usemap 属性与 &lt;map&gt; 元素的 name 或 id 属性相关联,以建立&lt;img&gt; 与&lt;map&gt; 之间的关系。那么指定的区域用map包裹的area标签来指定
table 标签 table属性 border:线宽,指定宽度 caption:标题 thead:table head的行,里面的单元格可以变成 th tbody:表体,里面用 tr:table row td:单元格 table data tfoot:表尾 ,定义了一组表格中各列的汇总行。里面用td(推荐)、th都行。 th、td的跨列、跨行:标签增加属性。 colspan=2,跨2列 rowspan=2 跨2行</description>
</item>
<item>
<title>线程</title>
<link>http://pccmast.github.io/posts/%E7%BA%BF%E7%A8%8B/</link>
<pubDate>Sat, 05 Dec 2020 19:18:24 +0800</pubDate>
<guid>http://pccmast.github.io/posts/%E7%BA%BF%E7%A8%8B/</guid>
<description>线程 一个Java程序实际上是一个JVM进程,JVM进程用一个主线程来执行main()方法,在main()方法内部,我们又可以启动多个线程。此外,JVM还有负责垃圾回收的其他工作线程等。
因此,对于大多数Java程序来说,我们说多任务,实际上是说如何使用多线程实现多任务。
创建新线程 class Thread implements Runnable 我们需要实例化一个Thread实例,然后调用它的start()方法。为新线程添加要做的事情,有以下两种方法:
从Thread派生一个自定义类,然后覆写run()方法 public class Main { public static void main(String[] args) { Thread t = new Thread(new MyRunnable()); t.start(); // 启动新线程 } } class MyRunnable implements Runnable { @Override public void run() { System.out.println(&#34;start new thread!&#34;); } } 创建Thread实例时,传入一个Runnable实例:(Runnable是一个抽象类,需要重写run方法) public class Main { public static void main(String[] args) { Thread t = new Thread(new MyRunnable()); t.</description>
</item>
<item>
<title>Hashmapimplements</title>
<link>http://pccmast.github.io/posts/hashmap%E7%9A%84%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90/</link>
<pubDate>Wed, 30 Sep 2020 19:32:13 +0800</pubDate>
<guid>http://pccmast.github.io/posts/hashmap%E7%9A%84%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90/</guid>
<description>jdk11的HashMap源码分析 文档注释部分: HashMap是无序的,特别是不保证顺序随时间不变 get 和 put 操作是常量时间复杂度的&mdash;O(1) 装载因子设置为0.75,平衡了空间和时间消耗。更高的装载因子降低了空间成本却增大了查找的花费,导致put、get操作时间变慢。 如果初始容量(initial capacity)比最大元素数(maximum number of entries)除以装载因子的值还大,那么不会再进行rehash操作。 一般采用桶(binned、bucketed)哈希表,但是如果桶元素太多,会变成树(TreeNodes),树的结构就像TreeMap 由于 resize 和 removal 操作导致树的结点太少的时候,会将红黑树变为哈希桶(untreeified) 继承关系 public class HashMap&lt;K,V&gt; extends AbstractMap&lt;K,V&gt; implements Map&lt;K,V&gt;, Cloneable, Serializable HashMap可被序列化,可被克隆 参数 static final int DEFAULT_INITIAL_CAPACITY = 1 &lt;&lt; 4; // aka 16 // 必须是2的幂 static final int MAXIMUM_CAPACITY = 1 &lt;&lt; 30; // 必须是2的幂 static final float DEFAULT_LOAD_FACTOR = 0.75f; static final int TREEIFY_THRESHOLD = 8; // 当一个hash桶的元素数大于8,那么就变成红黑树实现 static final int UNTREEIFY_THRESHOLD = 6; // 当resize让一个树的元素小于6时,就把它变为桶 static final int MIN_TREEIFY_CAPACITY = 64; // 整个hash表执行树化操作的最小容量,表里的元素数大于64才会树化桶 put() 代码注解来源</description>
</item>
<item>
<title>包管理与Maven</title>
<link>http://pccmast.github.io/posts/%E6%88%91%E7%9A%84%E7%AC%AC%E4%BA%8C%E7%AF%87%E5%8D%9A%E5%AE%A2/</link>
<pubDate>Sat, 26 Sep 2020 10:46:32 +0800</pubDate>
<guid>http://pccmast.github.io/posts/%E6%88%91%E7%9A%84%E7%AC%AC%E4%BA%8C%E7%AF%87%E5%8D%9A%E5%AE%A2/</guid>
<description>JVM的类加载 JVM的工作被设计地相当简单:
执行一个类的字节码 假如这个过程中碰到了新的类,加载它 寻找类的地方:classpath(类路径)。
类的全限定类名(目录层级,比如 com.github.hscp.XXX)唯一确定了一个类
包就是把许多类放在⼀一起打的压缩包
classpath hell 当多个同名类同时出现在classpath中时,就是噩梦的开始,jdk会不知道使用哪个类。并且你也很难发现这个错误。
* 比如,a 路径中有 com.github.hscp.Cat b 路径中也有 com.github.hscp.Cat 包管理 包管理的本质就是告诉JVM如何找到所需的第三⽅方类库,以及成功地解决其中的冲突问题
黑暗岁月 手动写命令进行编译运行
启蒙时代 Apache Ant
手动下载jar包,放在一个目录中 写XML配置,指定编译的源代码目录、依赖的jar包、输出目录等 缺点
每个人都要自⼰造一套轮子(定义存放包的路径) 依赖的第三方类库都需要手动下载,费时费力 假如你的应用依赖了一万个第三方的类库呢? 没有解决 Classpath 地狱的问题 光明时代 Maven 时代
思想:Convention over configuration(约定优于配置) Maven 远不不止是包管理工具 Maven 有两个仓库,中央仓库和本地仓库 Maven 的中央仓库按照一定的约定储存包 Maven 的本地仓库 默认位于 ~/.</description>
</item>
<item>
<title>My First Post</title>
<link>http://pccmast.github.io/posts/my-first-post/</link>
<pubDate>Tue, 15 Sep 2020 19:50:35 +0800</pubDate>
<guid>http://pccmast.github.io/posts/my-first-post/</guid>
<description>我的第一篇博客 安装Hugo Mac 安装方式:
brew install hugo hugo version Windows 安装方式:
Hugo release 网站下载 hugo 解压hugo文件夹 把 &hellip;\hugo 加入PATH 重启终端 安装完成的标志:命令行输入 hugo version 显示代码
使用 Hugo+Github 快速搭建博客 Hugo 生成页面 1. 进入 Hugo 官网,点击首页的 Quick Start, 按照官网教程操作。 2. 命令行操作,新建一个网站。 hugo new site 网站名 该命令会在当前目录下新建 网站名 文件夹。 在这里将文件夹取名pccmast.github.io-creator 3. cd 进入新创建的文件夹,使用git init,新建仓库, 并从github 下载网站主题 git submodule add https://github.com/budparr/gohugo-theme-ananke.git themes/ananke 把主题添加到网站设置中</description>
</item>
</channel>
</rss>