计算机网络 应用层上 | 域名解析系统DNS 文件传输协议FTP,NFS 万维网URL HTTP HTML

文章目录

  • 1 域名系统DNS
    • 1.1 域名vsIP?
    • 1.2 域名结构
    • 1.3 域名到IP的解析过程
      • 域名服务器类型
  • 2 文件传送协议
    • 2.1 FTP 文件传输协议
    • 2.2 NFS 协议
    • 2.3 简单文件传送协议 TFTP
  • 3 万维网WWW
    • 3.1 统一资源定位符URL
    • 3.2 超文本传送协议HTTP
      • 3.2.1 HTTP工作流程
      • 3.2.2 HTTP报文结构
      • 3.2.3 HTTP服务器存放用户信息
    • 3.3 超文本标记语言HTML
    • 3.4 搜索工具

之前我们讲运输层的时候已经讲了运输层可以给不同进程之间通信,但我们还需要应用层原因是,许多 应用需要多个进程之间相互配合完成,所以应用层进程用来约束这些配合!

每个应用层协议用来解决一个问题

应用层的许多协议都是基于客户服务器方式 客户是请求方,服务器是服务提供方

最重要内容

1 域名系统DNS——从域名解析出IP地址

2 万维网和HTTP协议,以及万维网的两种不同的信息搜索引擎

3 电子邮件的传输过程,SMTP协议和POP3协议,IMAP协议使用的场合

4 动态主机配置协议DHCP的特点

5 网络管理的三个组成部分

6 系统调用和应用编程接口的基本概念

7 P2P文件系统

1 域名系统DNS

1.1 域名vsIP?

为什么给人们用域名?方便记忆,如baidu.com就比一串的IP好记

为什么给机器用IP?IP长度固定,方便机器处理

初期的时候,由于主机个数比较少,所以一台机器的hosts文件列出所有的域名和IP的对应关系,需要转换时查表即可。

目前计算机网络理论上也可以把所有的域名和IP的对应关系放到一个服务器中,但是问题是

1 地球上计算机过多,该服务器负荷太大

2 如果这台服务器出现问题,会导致整体的网络的瘫痪

所以提出树状结构的命名方法,并采用分布式的域名系统DNS(分布式就是分散的意思)这样即便某一台计算机出了问题,也不会导致整体出现问题

1.2 域名结构

域名一般由标号组成,标号间通过.分割

顶级域名,二级域名,三级域名……

顶级域名一般有

  • 国家顶级域名 如cn表示中国,us表示美国,uk表示英国等等
  • 通用顶级域名 如com表示公司企业,org表示非盈利组织
  • 基础结构域名 arpa 用于反向域名解析

更高级的域名负责管理下属的域名

比如我国中国cn顶级域名下划分了41个二级域名(分为类别域名7个和行政区域名34个)

1.3 域名到IP的解析过程

先来了解域名服务器,即存放域名和IP对应的服务器

域名服务器

一个服务器所负责管辖的范围叫做区

各单位根据具体情况来划分自己管辖范围的区,但在一个区中的所有节点必须是联通的,每一个区设置相应的权限域名服务器用来保存该区中所有的主机的域名到IP地址的映射

域名服务器类型

根域名服务器

​ 最重要的域名服务器,所有的根域名服务器都知道所有的顶级域名服务器的域名和IP地址,不管是哪一个本地域名服务器,在无法解析的时候,就首先求助于根域名服务器

在因特网上有13个不同IP地址的根域名服务器,从a到m

顶级域名服务器(TLD服务器)

​ 这些域名服务器负责管理在该顶级域名服务器注册的所有二级域名。当收到DNS查询请求时,就给出相应的回答

权限域名服务器

​ 负责一个区的域名服务器,当一个权限域名服务器还不能给出最后的查询回答时,就会告诉发出查询请求的DNS客户,下一步应当找哪一个权限域名服务器

本地域名服务器

​ 每一个因特网服务器提供者ISP,或一个大学,都可以拥有一个本地域名服务器

为了提高域名服务器的可靠性,一般把数据复制到几个域名服务器来保存

域名解析这个过程是在多个域名服务器上的多个域名服务程序共同完成的

大概过程如下

某一个应用程序请求某域名的IP --》 生成DNS请求报文,发送给本地的域名服务器 --》如果本地可以查到的话,则返回回答报文,查不到的话就向其他域名服务器请求直到找到为止

解析过程

主机向本地域名服务器查询采用递归查询

本地服务器向根域名服务器查询采用迭代查询

名字的高速缓存,存放最近用到的

记录集合

mx记录

ns记录

ptr记录

2 文件传送协议

2.1 FTP 文件传输协议

FTP是使用最广的文件传输协议

FTP提供交互式的访问,允许客户指明文件的类型和格式,并允许文件具有存取权限

匿名访问通过anonymous实现

文件的传送并非很简单,原因是不同计算机厂商研制出的文件系统多达数百种,差别很大。主要体现在

1 计算机存储数据的格式不同

2 文件目录结构和文件命名规定不同

3 存取功能的命令不同

4 访问控制方法不同

所以我们的FTP核心就是要减少或消除在不同操作系统下处理文件的不兼容性

FTP使用客户服务器方式

FTP使用两个TCP连接,一个用于控制(21端口),一个用于数据传送(20端口),因而需要两个端口号,所以数据连接和控制连接不会乱

使用两个端口的另外好处是

1 使协议更加简单和实现

2 在传输文件时还可以利用控制连接

2.2 NFS 协议

NFS允许应用进程打开一个远地文件,并能在该文件的某一个特定位置开始读写数据

NFS可以使用户只复制一个大文件中的很小的片段

端口2049

2.3 简单文件传送协议 TFTP

特点

1 很小易于实现

2 由于很小所以TFTP只支持文件传输而不支持交互, TFTP没有一个庞大的命令集合

3 每次传输的数据有512字节,组成一个文件块,对块进行编号,从1开始,支持ASCLL码或二进制传送,可对文件进行读或写,使用很简单的首部

工作

1 很像停止等待协议,每发送完一个文件块就等待对方确认,收不到确认就重复发送PDU

2 TFTP端口号是69

三种协议比较

协议 特点
FTP 交互式,存取权限,建立副本
NFS 交互式,存取权限,无副本
FTFP 没有交互式,不进行身份验证

远程终端协议TRLNET

3 万维网WWW

万维网是一个分布式的超媒体系统,它是超文本系统的扩充

万维网将大量的信息分布在整个互联网

要核心解决几个问题

1 怎样标志分别分布在整个互联网的万维网文档——用URL

2 用什么样的协议实现万维网上的各种连接——用HTTP

3 怎样使得不同作者创作不同风格的万维网文档,都能在互联网上各种主机显示 使用HTML

4 怎么样使得用户能够方便找到需要的资源——用搜索工具

接下来分别探讨下面的问题

3.1 统一资源定位符URL

统一资源定位符是用来表示互联网资源的位置和获得的方法

一般组成如下

协议:// 主机名:端口/路径

协议就是通过何种方式获得该万维网文档

主机名就是存放文档主机的域名

其中端口往往被省略,因为对于特定协议,有些端口都是默认的,比如HTTP协议默认端口号为80

所以往往是如下的形式

协议://主机名/路径

很多时候都把前面的协议省去了,只保留了主机名

比如 baidu.com

完整应该是 http://baidu.com

3.2 超文本传送协议HTTP

定义了浏览器怎样向万维网服务器请求万维网文档,以及服务器怎样把文档传输给浏览器

HTTP协议是无连接,无记忆状态的协议

无连接即不会提前建立连接

无状态协议,这意味着每个HTTP请求都是独立的,服务器不会在多次请求之间保留任何关于客户端的状态信息。每个HTTP请求都被视为一个独立的交互,服务器不会记住之前的请求或会话信息。

3.2.1 HTTP工作流程

如下

1 每个万维网网点都有一个服务器进程,它不断监听TCP端口80,以便发现是否有浏览器向它发送链接建立请求

2 监听到后,建立连接,浏览器向万维网服务器发出请求,服务器返回请求页面做相应。完成任务后,TCP就被释放了

对于早期的HTTP协议 HTTP/1.0,请求一个万维网文档耗费时间是文档传输时间加上两倍往返时间RTT(一个RTT用于建立TCP连接,另一个RTT用于请求和接收万维网文档)

这是它的一个缺点

因而HTTP/1.1 很好解决了这个问题,它使用了持续连接的方法,就是说万维网服务器在相应之后的一段时间依然保持这个连接

后来又提出升级版本 HTTP/2,将服务器的相应也变成了并行的,同时可以复用TCP连接的请求,

为了加快请求相应速度,往往会用到代理服务器,即将最近的一些请求和相应放到本地磁盘中

3.2.2 HTTP报文结构

HTTP两类报文

1 请求报文——从客户到服务器发送请求报文

2 相应报文——从服务器到客户的回答

HTTP请求报文由客户端发送给服务器,用于请求特定资源或执行特定操作。它通常包括以下部分:

  • 请求行(Request Line): 包含了HTTP方法、请求的URI和HTTP协议版本。例如:

    GET /index.html HTTP/1.1
    

    以下是一些常见的HTTP请求方法:

    1. GET:用于请求服务器发送指定资源的内容。GET请求通常用于获取数据,不应该对服务器端数据产生影响。GET请求的参数通常附在URL的查询字符串中。
    2. POST:用于向服务器提交数据,通常用于创建新资源。POST请求将数据包含在请求体中,而不是URL中。
    3. PUT:用于请求服务器更新或替换指定的资源,通常用于更新已存在的资源。PUT请求将数据包含在请求体中,并且通常会覆盖原始资源。
    4. DELETE:用于请求服务器删除指定的资源。DELETE请求用于删除服务器上的资源。
    5. PATCH:用于对资源进行部分更新。与PUT不同,PATCH只更新资源的一部分,而不是整个资源。
    6. HEAD:类似于GET请求,但服务器只返回响应头部信息,而不返回实际内容。通常用于获取资源的元数据或检查资源是否存在。
    7. OPTIONS:用于获取服务器支持的HTTP方法和资源的信息。客户端可以使用OPTIONS请求来了解服务器允许哪些方法和资源访问。
    8. TRACE:用于测试与服务器之间的连接,客户端发送一个TRACE请求,服务器返回请求的内容,以便客户端可以查看请求在传输过程中是否被修改。
    9. CONNECT:通常用于创建与服务器的网络连接,通常用于代理服务器。
  • 请求头部(Request Headers): 包含了一系列的键值对,用于传递关于请求的信息,如User-Agent、Host、Accept等。例如:

    Host: www.example.com
    User-Agent: Mozilla/5.0
    Accept: text/html
    
  • 空行(Blank Line): 请求行和请求头之间有一个空行,用于分隔请求头部和请求体。

  • 请求体(Request Body): 可选的部分,通常用于POST请求等情况,包含了要发送给服务器的数据。

  1. HTTP响应报文结构:

HTTP响应报文由服务器发送给客户端,用于回复客户端的请求。它通常包括以下部分:

  • 状态行(Status Line): 包含了HTTP协议版本、状态码和状态描述。例如:

    HTTP/1.1 200 OK
    
    1. HTTP状态码根据其首位数字分为五大类,每个类别都表示了不同的意义。这五大类是:
      1. 1xx(Informational,信息性状态码):这些状态码表示请求已被接收,正在处理或者需要进一步的操作。这些状态码通常不会在实际应用中经常见到,而更多用于HTTP协议的通信过程中。
      2. 2xx(Successful,成功状态码):这些状态码表示请求已成功被服务器接受、理解并处理。最常见的是200 OK,表示成功处理了请求。
      3. 3xx(Redirection,重定向状态码):这些状态码表示客户端需要采取额外的操作来完成请求。通常用于重定向到其他URL以获取请求的资源。
      4. 4xx(Client Error,客户端错误状态码):这些状态码表示客户端发送的请求有错误,无法被服务器理解或处理。最常见的是404 Not Found,表示请求的资源不存在。
      5. 5xx(Server Error,服务器错误状态码):这些状态码表示服务器在处理请求时发生了错误。最常见的是500 Internal Server Error,表示服务器内部发生了错误。
  • 响应头部(Response Headers): 类似于请求头部,包含了一系列的键值对,用于传递关于响应的信息,如Server、Content-Type、Content-Length等。例如:

    Server: Apache
    Content-Type: text/html
    Content-Length: 1234
    
  • 空行(Blank Line): 状态行和响应头之间有一个空行,用于分隔响应头部和响应体。

  • 响应体(Response Body): 包含了服务器返回的实际数据,例如HTML页面、JSON数据等。

3.2.3 HTTP服务器存放用户信息

之前讲到HTTP是无状态的,即不会保留客户端信息,但有些时候,服务器需要记住用户的信息,比如一个顾客要购买多件物品放入购物车,以便集中结账

这时候需要用到Cookie

工作流程如下:

  1. 创建Cookie: 服务器在HTTP响应中通过Set-Cookie头部字段创建Cookie,并将其发送到客户端浏览器。Cookie包含一个键值对,通常是一个名称和一个值,以及一些其他属性,如过期时间、域名、路径等。

    Set-Cookie: username=johndoe; expires=Sat, 31 Dec 2023 23:59:59 GMT; path=/; domain=example.com; secure; HttpOnly
    
    

    在上面的示例中,服务器创建了一个名为username的Cookie,它的值是johndoe,并设置了过期时间、路径、域名等属性。

  2. 存储Cookie: 一旦浏览器接收到Cookie,它会将Cookie存储在本地的Cookie存储中。这个存储通常是浏览器的内存或磁盘中的一个文件。

  3. 发送Cookie: 当浏览器向同一服务器发出后续HTTP请求时,它会将与该服务器相关的Cookie附加到请求的Cookie头部字段中。这使得服务器能够识别用户并访问之前存储的信息。

  4. 服务器读取Cookie: 服务器在收到HTTP请求时,会检查请求的Cookie头部字段以获取相关的Cookie信息。这允许服务器识别用户,并根据需要执行特定的操作,如验证用户身份、提供个性化内容等。

  5. 更新Cookie: 服务器可以在HTTP响应中更新或修改Cookie的内容,以便在客户端的下一次请求中反映这些更改。例如,服务器可以更新Cookie的过期时间或值。

3.3 超文本标记语言HTML

他不是协议,只是一种语言

HTML的基本概述:

  1. 标记语言: HTML是一种标记语言,它使用一系列的标签(标记)来描述文档的结构和内容。标签通常由尖括号< >包围,如等。
  2. 超文本: HTML的全名是"Hypertext Markup Language",其中的"Hypertext"表示超文本。HTML允许文档中的内容之间建立超链接,用户可以通过点击链接来导航到其他页面或资源。
  3. 结构: HTML文档通常由多个部分组成,包括声明、元素、元素(包含文档的元数据信息)、</code>元素(指定页面标题)、<code><body></code>元素(包含页面的主要内容)等。</li> <li><strong>元素和属性:</strong> HTML由各种不同类型的元素组成,每个元素有其特定的含义和用途。元素可以包含其他元素,形成嵌套结构。元素通常具有属性,用于提供有关元素的额外信息。例如,<code><a></code>元素用于创建超链接,它可以包含<code>href</code>属性,指定链接的目标URL。</li> <li><strong>文本内容:</strong> HTML用于定义文本内容,包括标题、段落、列表、表格、图像等。通过HTML标签,可以将文本格式化、分段、组织和呈现。</li> <li><strong>样式和布局:</strong> HTML通过标签定义文档的结构和内容,但通常需要使用CSS(Cascading Style Sheets)来定义页面的样式和布局。CSS允许开发人员控制文本和元素的外观,包括颜色、字体、大小、间距等。</li> <li><strong>交互性:</strong> HTML也可以与JavaScript一起使用,以实现页面的交互性和动态行为。JavaScript可以通过DOM(Document Object Model)访问和操作HTML元素,使用户能够与页面交互。</li> </ol> <h3>3.4 搜索工具</h3> <p>搜索引擎是一种用于查找和检索互联网上的信息的计算机程序或工具。它们允许用户输入关键词或查询,并返回与这些关键词相关的网页、文档、图片、视频和其他多媒体内容的搜索结果列表。搜索引擎在互联网上广泛使用,是人们获取信息、解决问题和进行研究的重要工具。</p> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1738320841126502400"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(计算机系统基础,计算机网络,http,html)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1904019722689638400.htm" title="Trae 解决无法登录问题" target="_blank">Trae 解决无法登录问题</a> <span class="text-muted">兔子不爱吃bug</span> <a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>什么是Trae?Trae是字节跳动于2025年1月19日推出的AI编程工具,集成了众多顶级AI。Trae海外版官方网站:https://www.trae.ai解决上网环境问题如果你是在国内登录Trae时可能会出现以下状况:解决方法下载插件工具ILink安装完成后开启插件,再次登录。登录成功最后就是下载,安装,登录了,我就不一个个演示了。</div> </li> <li><a href="/article/1904017327234543616.htm" title="Mac安装 brew" target="_blank">Mac安装 brew</a> <span class="text-muted">潇凝子潇</span> <a class="tag" taget="_blank" href="/search/macos/1.htm">macos</a><a class="tag" taget="_blank" href="/search/brew/1.htm">brew</a> <div>MacBook-Pro.ssh%/bin/bash-c"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"==>Checkingfor`sudo`access(whichmayrequestyourpassword)...Password:==>Thisscriptwillinstall:/</div> </li> <li><a href="/article/1904016065743089664.htm" title="Mac触控板设置以及使用" target="_blank">Mac触控板设置以及使用</a> <span class="text-muted">Yo3ngLau</span> <a class="tag" taget="_blank" href="/search/Mac%E5%AE%9E%E7%94%A8%E6%8A%80%E5%B7%A7%E6%93%8D%E4%BD%9C%E9%9B%86/1.htm">Mac实用技巧操作集</a> <div>本文转载自:https://blog.csdn.net/guang_s/article/details/84307604如有侵权,联系即删,转载仅用于学习用途触控板Mac触控板体验是非常好的,很多同学甚至直接用触控板代替鼠标操作,但是默认设置中有一些功能是没有开启的,需要手动配置。本文就来说说如何更改Mac触控板默认设置,让触控板变得更高效。一、启用三指拖移1、打开系统偏好设置,点击辅助功能。2、</div> </li> <li><a href="/article/1904012913543278592.htm" title="开源前端埋点监控插件Web-Tracing" target="_blank">开源前端埋点监控插件Web-Tracing</a> <span class="text-muted">研创通之逍遥峰</span> <a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90%E5%B7%A5%E5%85%B7/1.htm">开源工具</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90/1.htm">开源</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>Web-Tracing是一款专为前端项目设计的前端监控插件,它基于JavaScript设计,兼容跨平台使用,并提供了全方位的监控功能。开源地址:https://gitee.com/junluoyu/web-tracing-analysis以下是关于Web-Tracing的详细介绍:一、主要功能Web-Tracing涵盖了多个领域的监控手段,包括但不限于:埋点:通过事件监听,实现对用户交互行为的精准</div> </li> <li><a href="/article/1904012535435161600.htm" title="SQLyog 13.1.6 社区免费中文版:高效便捷的MySQL管理工具" target="_blank">SQLyog 13.1.6 社区免费中文版:高效便捷的MySQL管理工具</a> <span class="text-muted">m0_74823264</span> <a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0%E8%B7%AF%E7%BA%BF/1.htm">学习路线</a><a class="tag" taget="_blank" href="/search/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4/1.htm">阿里巴巴</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a> <div>SQLyog13.1.6社区免费中文版:高效便捷的MySQL管理工具sqlyog_13.1.6.7z项目地址:https://gitcode.com/open-source-toolkit/a94c8项目介绍SQLyog13.1.6社区免费中文版是一款专为MySQL设计的数据库管理工具,以其强大的功能和直观的图形用户界面(GUI)深受开发者和数据库管理员的喜爱。该版本为社区免费版,提供了中文界面,</div> </li> <li><a href="/article/1904012278655676416.htm" title="嵌入式Linux网络编程实战:基于libcurl实现Gitee文件上传" target="_blank">嵌入式Linux网络编程实战:基于libcurl实现Gitee文件上传</a> <span class="text-muted">银河码</span> <a class="tag" taget="_blank" href="/search/Linux%E7%BD%91%E7%BB%9C%E7%BC%96%E7%A8%8B/1.htm">Linux网络编程</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a><a class="tag" taget="_blank" href="/search/gitee/1.htm">gitee</a><a class="tag" taget="_blank" href="/search/c%E8%AF%AD%E8%A8%80/1.htm">c语言</a><a class="tag" taget="_blank" href="/search/vscode/1.htm">vscode</a><a class="tag" taget="_blank" href="/search/tcp%2Fip/1.htm">tcp/ip</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a> <div>嵌入式Linux网络编程实战:基于libcurl实现Gitee文件上传【本文代码已在立创·泰山派平台验证通过,可直接用于物联网设备数据上报场景】一、功能概述与实现效果1.1核心功能本地文件读取:支持任意二进制/文本文件Base64编码转换:符合RFC4648标准HTTP传输:通过libcurl实现,也可以使用HTTPS加密通信GiteeAPI对接:自动创建/更新仓库文件1.2运行效果演示#上传本地</div> </li> <li><a href="/article/1904010009491075072.htm" title="【2017-2024】Adobe AN多功能的动画制作软件安装" target="_blank">【2017-2024】Adobe AN多功能的动画制作软件安装</a> <span class="text-muted">HIosng</span> <a class="tag" taget="_blank" href="/search/adobe/1.htm">adobe</a> <div>AdobeAN软件简介AdobeAnimate(简称AdobeAN)是由AdobeSystems开发的一款多功能的动画制作软件。它不仅可以用来设计二维动画,也支持创建交互性内容,为网络、游戏和应用程序提供了丰富的媒介。AdobeAnimate是创造动画、交互式内容与动态图形的强大工具,广受动画师、游戏开发者和设计师的欢迎。安装包https://pan.baidu.com/s/1BCK34EJWWu</div> </li> <li><a href="/article/1904005977171095552.htm" title="ubuntu 20.04安装visual studio code并配置C++编译环境" target="_blank">ubuntu 20.04安装visual studio code并配置C++编译环境</a> <span class="text-muted">Android Coder</span> <a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/NDK%E4%B8%8E%E9%9F%B3%E8%A7%86%E9%A2%91/1.htm">NDK与音视频</a><a class="tag" taget="_blank" href="/search/ubuntu/1.htm">ubuntu</a> <div>1.下载安装visualstudiocode我的系统是Ubuntu20.04,首先是下载安装包。进入官网,直接下载压缩包。https://code.visualstudio.com/Download下载完成后双击安装即可。2.C++运行环境配置插件的安装汉化:过于简单,直接按照教程操作:https://jingyan.baidu.com/article/7e44095377c9d12fc1e2ef</div> </li> <li><a href="/article/1904003581850218496.htm" title="数据库数值函数详解" target="_blank">数据库数值函数详解</a> <span class="text-muted">web安全工具库</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a> <div>各类资料学习下载合集https://pan.quark.cn/s/8c91ccb5a474数值函数是数据库中用于处理数值数据的函数,可以用于执行各种数学运算、统计计算等。数值函数在数据分析及处理时非常重要,能够帮助我们进行数据的聚合、计算和转换。在本篇博客中,我们将详细介绍常用的数据库数值函数,并通过Python和SQLite进行示例,帮助您理解和应用这些函数。1.数值函数的基本概念数值函数是用于</div> </li> <li><a href="/article/1904003329663496192.htm" title="CSS 创建" target="_blank">CSS 创建</a> <span class="text-muted">智慧浩海</span> <a class="tag" taget="_blank" href="/search/CSS/1.htm">CSS</a><a class="tag" taget="_blank" href="/search/css/1.htm">css</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>当读到一个样式表时,浏览器会根据它来格式化HTML文档。如何插入样式表插入样式表的方法有三种:外部样式表(Externalstylesheet)内部样式表(Internalstylesheet)内联样式(Inlinestyle)外部样式表当样式需要应用于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。每个页面使用标签链接到样式表。标签在(</div> </li> <li><a href="/article/1904000054587355136.htm" title="Python中Requests的Cookies的简单使用" target="_blank">Python中Requests的Cookies的简单使用</a> <span class="text-muted">北条苒茗殇</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/Requests/1.htm">Requests</a> <div>概述Python的Requests库中有一个cookies,是用于管理HTTPCookie的工具,可以像字典一样操作Cookie,支持自动处理作用域(域名、路径)和持久化,cookies是一个RequestsCookieJar的类型。一、概念1.作用自动存储服务器返回的Cookie根据请求域名和路径进行自动发送匹配的Cookie支持手动添加、修改、删除Cookie2.RequestsCookieJ</div> </li> <li><a href="/article/1904000055065505792.htm" title="Pytest基础使用" target="_blank">Pytest基础使用</a> <span class="text-muted">北条苒茗殇</span> <a class="tag" taget="_blank" href="/search/pytest/1.htm">pytest</a> <div>概述Pytest是Python里的一个强大的测试框架,灵活易用,可以进行功能,自动化测试使用,可以与Requests,Selenium等进行结合使用,同时可以生成Html的报告。一、Pytest的基本使用在未指定Pytest的配置文件时,会对以下文件进行执行:test_*.py,如:test_1.py*_test.py,如:1_test.py会对以下的类和函数进行执行:类:以Test_开头的类,如</div> </li> <li><a href="/article/1903997785917681664.htm" title="webAPP开发三:实现数据的交互显示" target="_blank">webAPP开发三:实现数据的交互显示</a> <span class="text-muted">lvzekun-IT</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E5%9F%BA%E7%A1%80/1.htm">前端基础</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E5%AD%A6%E4%B9%A0/1.htm">前端学习</a> <div>开发中遇到的错误:代码逻辑错误,将初始化函数放在了初始化对象之前,造成了“.html()”无法识别,表示未定义、http://read.t.imooc.io/参考代码下载地址。开发截图:代码结构:html{width:100%;height:100%;overflow-x:hidden;}body{text-align:left;width:100%;background:#e9dfc7;}.m-</div> </li> <li><a href="/article/1903990842599731200.htm" title="[Android] NFC卡模拟 9.05 模拟NFC门禁卡 电梯卡等 手机代替卡片" target="_blank">[Android] NFC卡模拟 9.05 模拟NFC门禁卡 电梯卡等 手机代替卡片</a> <span class="text-muted">私人珍藏库</span> <a class="tag" taget="_blank" href="/search/%E6%99%BA%E8%83%BD%E6%89%8B%E6%9C%BA/1.htm">智能手机</a> <div>[Android]NFC卡模拟链接:https://pan.xunlei.com/s/VOM4VZZGlLh_SLa9m6Mwh4YBA1?pwd=aeqp#【应用名称】NFC卡模拟【应用版本】9.05【软件大小】2.7mb【适用型号】安卓【应用说明】功能强大且的NFC卡模拟器,可模拟各类门禁卡、电梯卡、部分公司(工厂)工卡或饭卡、部分学校饭卡、部分图书馆借书卡等各类IC卡,用手机替代卡片去刷门禁</div> </li> <li><a href="/article/1903990463518535680.htm" title="YUV422转RGB并显示于Qlabel" target="_blank">YUV422转RGB并显示于Qlabel</a> <span class="text-muted">小火龙的马甲</span> <a class="tag" taget="_blank" href="/search/qt/1.htm">qt</a><a class="tag" taget="_blank" href="/search/opencv/1.htm">opencv</a> <div>读取YUV422格式文件,转成Mat类型BGR格式,并显示于Qlabel控件上。写在前面从今天起,多看些书吧。要不,就从黄宁然看过的看起。问题来源anxue100:[https://bbs.csdn.net/topics/****?spm=1001.2014.3001.**77]因“当前发帖距今超过3年,不再开放新的回复”,故新建帖子。迟到的回复。1.新建类编写头文件:YUV422.h文件#ifn</div> </li> <li><a href="/article/1903990337093824512.htm" title="产品经理必备知识之网页设计系列(二)-如何设计出一个优秀的界面" target="_blank">产品经理必备知识之网页设计系列(二)-如何设计出一个优秀的界面</a> <span class="text-muted">文宇肃然</span> <a class="tag" taget="_blank" href="/search/%E4%BA%A7%E5%93%81%E8%BF%90%E8%90%A5%E7%B3%BB%E5%88%97%E8%AF%BE%E7%A8%8B/1.htm">产品运营系列课程</a><a class="tag" taget="_blank" href="/search/%E5%BF%AB%E9%80%9F%E5%AD%A6%E4%B9%A0%E5%AE%9E%E6%88%98%E5%BA%94%E7%94%A8/1.htm">快速学习实战应用</a><a class="tag" taget="_blank" href="/search/%E7%95%8C%E9%9D%A2%E8%AE%BE%E8%AE%A1/1.htm">界面设计</a><a class="tag" taget="_blank" href="/search/%E4%BA%A7%E5%93%81%E8%AE%BE%E8%AE%A1/1.htm">产品设计</a><a class="tag" taget="_blank" href="/search/%E4%BA%A7%E5%93%81%E7%BB%8F%E7%90%86/1.htm">产品经理</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E9%A1%B5%E8%AE%BE%E8%AE%A1/1.htm">网页设计</a> <div>前言第一部分参见产品经理必备知识之网页设计系列(一)-创建出色用户体验https://blog.csdn.net/wenyusuran/article/details/108199875第三部分参见产品经理必备知识之网页设计系列(三)-移动端适配&无障碍设计及测试https://wenyusuran.blog.csdn.net/article/details/108199947设计师和开发人员在构</div> </li> <li><a href="/article/1903981378131783680.htm" title="Github一周热门ai项目 25.3.24" target="_blank">Github一周热门ai项目 25.3.24</a> <span class="text-muted">BillyXie23</span> <a class="tag" taget="_blank" href="/search/AI%E6%8E%A2%E7%B4%A2/1.htm">AI探索</a><a class="tag" taget="_blank" href="/search/ai/1.htm">ai</a><a class="tag" taget="_blank" href="/search/github/1.htm">github</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/AI%E7%BC%96%E7%A8%8B/1.htm">AI编程</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90/1.htm">开源</a> <div>项目1:Significant-Gravitas/AutoGPT地址:https://github.com/Significant-Gravitas/AutoGPT描述:AutoGPT致力于让AI技术触手可及,为每个人提供构建AI的工具。Stars:173,711推荐理由:AutoGPT是开源AI领域的标杆项目,强调“人人可用AI”的愿景。它提供了一套完整的工具链,适合开发者和企业快速搭建AI应用</div> </li> <li><a href="/article/1903980495725719552.htm" title="蓝桥杯web备赛----html篇" target="_blank">蓝桥杯web备赛----html篇</a> <span class="text-muted">菥菥爱嘻嘻</span> <a class="tag" taget="_blank" href="/search/%E8%93%9D%E6%A1%A5%E6%9D%AF%E5%A4%87%E8%B5%9B/1.htm">蓝桥杯备赛</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/%E8%93%9D%E6%A1%A5%E6%9D%AF/1.htm">蓝桥杯</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a> <div>1、html写在前面,html相对简单,主要会考基础标签、html5新特性、html5本地存储、但是目前我还没有做到本地存储的题目1.1基础标签(1)、链接标签a:访问Examplehref:链接target:定义链接的打开方式。_blank:在新窗口或新标签页中打开链接。_self:在当前窗口或标签页中打开链接(默认)。_parent:在父框架中打开链接。_top:在整个窗口中打开链接,取消任何</div> </li> <li><a href="/article/1903972546252959744.htm" title="WEBGL 2D游戏引擎研发系列 第二章 <显示图片>" target="_blank">WEBGL 2D游戏引擎研发系列 第二章 <显示图片></a> <span class="text-muted">小鬼编程</span> <a class="tag" taget="_blank" href="/search/%E6%B8%B8%E6%88%8F/1.htm">游戏</a><a class="tag" taget="_blank" href="/search/web%E5%BC%80%E5%8F%91/1.htm">web开发</a><a class="tag" taget="_blank" href="/search/webgl/1.htm">webgl</a><a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/html5%E6%B8%B8%E6%88%8F%E5%BC%80%E5%8F%91/1.htm">html5游戏开发</a><a class="tag" taget="_blank" href="/search/%E6%89%A9%E5%B1%95/1.htm">扩展</a><a class="tag" taget="_blank" href="/search/%E6%B8%B8%E6%88%8F/1.htm">游戏</a><a class="tag" taget="_blank" href="/search/2d/1.htm">2d</a><a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/%E6%B8%B8%E6%88%8F%E5%BC%80%E5%8F%91/1.htm">游戏开发</a> <div>WEBGL2D游戏引擎研发系列第二章~\(≥▽≤)/~HTML5游戏开发者社区(群号:326492427)转载请注明出处:http://html5gamedev.org/目录HTML52D游戏引擎研发系列第一章HTML52D游戏引擎研发系列第二章HTML52D游戏引擎研发系列第三章HTML52D游戏引擎研发系列第四章HTML52D游戏引擎研发系列第五章HTML52D游戏引擎研发系列第六章HTML5</div> </li> <li><a href="/article/1903966112870100992.htm" title="Tiny RDM:轻量级跨平台Redis桌面管理工具" target="_blank">Tiny RDM:轻量级跨平台Redis桌面管理工具</a> <span class="text-muted">廉峥旭</span> <div>TinyRDM:轻量级跨平台Redis桌面管理工具tiny-rdmAModernRedisGUIClient项目地址:https://gitcode.com/gh_mirrors/ti/tiny-rdm项目基础介绍TinyRDM(TinyRedisDesktopManager)是一款现代化的轻量级Redis桌面管理工具,适用于Mac、Windows和Linux平台。该项目主要使用Go、Vue和Ja</div> </li> <li><a href="/article/1903965985623306240.htm" title="推荐一款新兴的开源项目:Nakama" target="_blank">推荐一款新兴的开源项目:Nakama</a> <span class="text-muted">施刚爽</span> <div>推荐一款新兴的开源项目:Nakamanakama-unityUnityclientforNakamaserver.项目地址:https://gitcode.com/gh_mirrors/na/nakama-unity项目介绍在开放源代码的世界中,我们常常会发现一些令人眼前一亮的创新之作。今天,我们要向您推荐的就是这样一个项目——Nakama。它是一个高度可扩展的游戏服务器和社交平台,专为现代游戏开</div> </li> <li><a href="/article/1903964471374704640.htm" title="在控制台中监控 Linux 性能的十种方法" target="_blank">在控制台中监控 Linux 性能的十种方法</a> <span class="text-muted">小郎碎碎念</span> <a class="tag" taget="_blank" href="/search/Linux%E8%BF%90%E7%BB%B4/1.htm">Linux运维</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a> <div>对下面的文章内容进行了总结,也是自己mark一下,以后用到可以直接来这里查看https://www.jeffgeerling.com/blog/2025/top-10-ways-monitor-linux-console10个linux系统重用来查看性能的工具(类top)top:用于监控Linux(或包括macOS在内的任何UNIX系统)的资源使用情况,能展示基本的系统指标,如CPU、内存、任务等</div> </li> <li><a href="/article/1903952496859082752.htm" title="HTML5!进击2025web蓝桥杯复习之路" target="_blank">HTML5!进击2025web蓝桥杯复习之路</a> <span class="text-muted">Deepsleep.</span> <a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a> <div>#HTML5全面解析##目录1.[HTML5简介](#1-html5-简介)2.[基本标签](#2-基本标签)3.[新特性](#3-新特性)4.[本地存储](#4-本地存储)5.[总结](#5-总结)---##1.HTML5简介HTML5是HTML的第五个主要版本,2014年由W3C正式发布。主要特性包括:-语义化标签-多媒体支持-图形绘制(Canvas/SVG)-本地存储能力-WebWorker</div> </li> <li><a href="/article/1903950224280317952.htm" title="最常用的Linux指令手册" target="_blank">最常用的Linux指令手册</a> <span class="text-muted">忍界英雄</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a> <div>最常用的Linux指令手册一、远程连接1.连接远程服务器sshuser@192.168.1.100二、文件与目录操作2.查看目录内容ls:查看目录内容、ls-l:显示详细信息、ls-al/home:包含隐藏文件3.显示当前路径pwd4.切换目录cd/var/www/html5.创建文件touchfile1.txtfile2.txt、touchlinode{1..10}.txt:创建文件6.写入文件</div> </li> <li><a href="/article/1903948370926432256.htm" title="202.HarmonyOS NEXT系列教程之图案锁错误处理机制详解" target="_blank">202.HarmonyOS NEXT系列教程之图案锁错误处理机制详解</a> <span class="text-muted"></span> <a class="tag" taget="_blank" href="/search/harmonyos-next/1.htm">harmonyos-next</a> <div>温馨提示:本篇博客的详细代码已发布到git:https://gitcode.com/nutpi/HarmonyosNext可以下载运行哦!HarmonyOSNEXT系列教程之图案锁错误处理机制详解效果预览1.错误处理架构1.1错误类型定义//振动功能错误处理try{vibrator.startVibration({type:'preset',effectId:'haptic.clock.timer</div> </li> <li><a href="/article/1903948369592643584.htm" title="201.HarmonyOS NEXT系列教程之图案锁生命周期管理详解" target="_blank">201.HarmonyOS NEXT系列教程之图案锁生命周期管理详解</a> <span class="text-muted"></span> <div>温馨提示:本篇博客的详细代码已发布到git:https://gitcode.com/nutpi/HarmonyosNext可以下载运行哦!HarmonyOSNEXT系列教程之图案锁生命周期管理详解效果预览1.生命周期概述@ComponentexportstructPatternLockMainPage{//组件初始化privatepatternLockController:PatternLockC</div> </li> <li><a href="/article/1903948239934124032.htm" title="192.HarmonyOS NEXT系列教程之图案锁事件处理机制详解" target="_blank">192.HarmonyOS NEXT系列教程之图案锁事件处理机制详解</a> <span class="text-muted"></span> <a class="tag" taget="_blank" href="/search/harmonyos-next/1.htm">harmonyos-next</a> <div>温馨提示:本篇博客的详细代码已发布到git:https://gitcode.com/nutpi/HarmonyosNext可以下载运行哦!HarmonyOSNEXT系列教程之图案锁事件处理机制详解效果预览1.事件系统概述1.1事件类型定义//点连接事件.onDotConnect(()=>{this.startVibrator();})//图案完成事件.onPatternComplete((inpu</div> </li> <li><a href="/article/1903948241196609536.htm" title="194.HarmonyOS NEXT系列教程之图案锁交互反馈系统详解" target="_blank">194.HarmonyOS NEXT系列教程之图案锁交互反馈系统详解</a> <span class="text-muted"></span> <a class="tag" taget="_blank" href="/search/harmonyos-next/1.htm">harmonyos-next</a> <div>温馨提示:本篇博客的详细代码已发布到git:https://gitcode.com/nutpi/HarmonyosNext可以下载运行哦!HarmonyOSNEXT系列教程之图案锁交互反馈系统详解效果预览1.交互反馈系统概述1.1反馈类型//反馈类型定义interfaceFeedbackTypes{visual:boolean;//视觉反馈haptic:boolean;//触觉反馈message:</div> </li> <li><a href="/article/1903948207478599680.htm" title="html脚本语言有哪些,常见的脚本语言(有哪些)" target="_blank">html脚本语言有哪些,常见的脚本语言(有哪些)</a> <span class="text-muted">神神九十九</span> <a class="tag" taget="_blank" href="/search/html%E8%84%9A%E6%9C%AC%E8%AF%AD%E8%A8%80%E6%9C%89%E5%93%AA%E4%BA%9B/1.htm">html脚本语言有哪些</a> <div>常见的脚本语言脚本言语:脚本言语又被称为扩建的言语,或者动态言语,是一种编程言语,用bai来操控软件应用程序,脚本通常以文本(如ASCII)保存,只在被调用时进行解说或编译。言语分类:Shell脚本:此类脚本用于自动化工作操控,即发动和操控体系程序的行为。大多的脚本言语解说器也一起是命令行界面,如Unixshell和MS-DOSCOMMAND.COM。其他如AppleScript,可以为体系添加脚</div> </li> <li><a href="/article/1903947827508211712.htm" title="人品大爆发,还是全面介绍一下Squirrel语言!!" target="_blank">人品大爆发,还是全面介绍一下Squirrel语言!!</a> <span class="text-muted">steel_de_lee</span> <a class="tag" taget="_blank" href="/search/%E8%AF%AD%E8%A8%80/1.htm">语言</a><a class="tag" taget="_blank" href="/search/%E8%99%9A%E6%8B%9F%E6%9C%BA/1.htm">虚拟机</a><a class="tag" taget="_blank" href="/search/lua/1.htm">lua</a><a class="tag" taget="_blank" href="/search/float/1.htm">float</a><a class="tag" taget="_blank" href="/search/%E6%96%87%E6%A1%A3/1.htm">文档</a><a class="tag" taget="_blank" href="/search/lambda/1.htm">lambda</a> <div>rel="File-List"href="file:///C:%5CDOCUME%7E1%5Cibm%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_filelist.xml">使用了Squirrel一段时间,对这个新语言也有所了解了,还是决定写一个语言本身的介绍,算是在国内抛砖引玉吧。我目前使用的是Squirrel2.2版,这是一个稳定的版本,文档也比较齐全</div> </li> <li><a href="/article/28.htm" title="如何用ruby来写hadoop的mapreduce并生成jar包" target="_blank">如何用ruby来写hadoop的mapreduce并生成jar包</a> <span class="text-muted">wudixiaotie</span> <a class="tag" taget="_blank" href="/search/mapreduce/1.htm">mapreduce</a> <div>ruby来写hadoop的mapreduce,我用的方法是rubydoop。怎么配置环境呢: 1.安装rvm:     不说了 网上有 2.安装ruby:     由于我以前是做ruby的,所以习惯性的先安装了ruby,起码调试起来比jruby快多了。 3.安装jruby:     rvm install jruby然后等待安</div> </li> <li><a href="/article/155.htm" title="java编程思想 -- 访问控制权限" target="_blank">java编程思想 -- 访问控制权限</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E8%AE%BF%E9%97%AE%E6%8E%A7%E5%88%B6%E6%9D%83%E9%99%90/1.htm">访问控制权限</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E4%BE%8B%E6%A8%A1%E5%BC%8F/1.htm">单例模式</a> <div>访问权限是java中一个比较中要的知识点,它规定者什么方法可以访问,什么不可以访问   一:包访问权限;   自定义包: package com.wj.control; //包 public class Demo { //定义一个无参的方法 public void DemoPackage(){ System.out.println("调用</div> </li> <li><a href="/article/282.htm" title="[生物与医学]请审慎食用小龙虾" target="_blank">[生物与医学]请审慎食用小龙虾</a> <span class="text-muted">comsci</span> <a class="tag" taget="_blank" href="/search/%E7%94%9F%E7%89%A9/1.htm">生物</a> <div>      现在的餐馆里面出售的小龙虾,有一些是在野外捕捉的,这些小龙虾身体里面可能带有某些病毒和细菌,人食用以后可能会导致一些疾病,严重的甚至会死亡.....      所以,参加聚餐的时候,最好不要点小龙虾...就吃养殖的猪肉,牛肉,羊肉和鱼,等动物蛋白质     </div> </li> <li><a href="/article/409.htm" title="org.apache.jasper.JasperException: Unable to compile class for JSP:" target="_blank">org.apache.jasper.JasperException: Unable to compile class for JSP:</a> <span class="text-muted">商人shang</span> <a class="tag" taget="_blank" href="/search/maven/1.htm">maven</a><a class="tag" taget="_blank" href="/search/2.2/1.htm">2.2</a><a class="tag" taget="_blank" href="/search/jdk1.8/1.htm">jdk1.8</a> <div>环境: jdk1.8    maven  tomcat7-maven-plugin  2.0 原因: tomcat7-maven-plugin  2.0 不知吃 jdk 1.8,换成 tomcat7-maven-plugin  2.2就行,即     <plugin> </div> </li> <li><a href="/article/536.htm" title="你的垃圾你处理掉了吗?GC" target="_blank">你的垃圾你处理掉了吗?GC</a> <span class="text-muted">oloz</span> <a class="tag" taget="_blank" href="/search/GC/1.htm">GC</a> <div>前序:本人菜鸟,此文研究学习来自网络,各位牛牛多指教  1.垃圾收集算法的核心思想   Java语言建立了垃圾收集机制,用以跟踪正在使用的对象和发现并回收不再使用(引用)的对象。该机制可以有效防范动态内存分配中可能发生的两个危险:因内存垃圾过多而引发的内存耗尽,以及不恰当的内存释放所造成的内存非法引用。   垃圾收集算法的核心思想是:对虚拟机可用内存空间,即堆空间中的对象进行识别</div> </li> <li><a href="/article/663.htm" title="shiro 和 SESSSION" target="_blank">shiro 和 SESSSION</a> <span class="text-muted">杨白白</span> <a class="tag" taget="_blank" href="/search/shiro/1.htm">shiro</a> <div>shiro 在web项目里默认使用的是web容器提供的session,也就是说shiro使用的session是web容器产生的,并不是自己产生的,在用于非web环境时可用其他来源代替。在web工程启动的时候它就和容器绑定在了一起,这是通过web.xml里面的shiroFilter实现的。通过session.getSession()方法会在浏览器cokkice产生JESSIONID,当关闭浏览器,此</div> </li> <li><a href="/article/790.htm" title="移动互联网终端 淘宝客如何实现盈利" target="_blank">移动互联网终端 淘宝客如何实现盈利</a> <span class="text-muted">小桔子</span> <a class="tag" taget="_blank" href="/search/%E7%A7%BB%E5%8B%95%E5%AE%A2%E6%88%B6%E7%AB%AF/1.htm">移動客戶端</a><a class="tag" taget="_blank" href="/search/%E6%B7%98%E5%AE%A2/1.htm">淘客</a><a class="tag" taget="_blank" href="/search/%E6%B7%98%E5%AF%B6App/1.htm">淘寶App</a> <div>       2012年淘宝联盟平台为站长和淘宝客带来的分成收入突破30亿元,同比增长100%。而来自移动端的分成达1亿元,其中美丽说、蘑菇街、果库、口袋购物等App运营商分成近5000万元。 可以看出,虽然目前阶段PC端对于淘客而言仍旧是盈利的大头,但移动端已经呈现出爆发之势。而且这个势头将随着智能终端(手机,平板)的加速普及而更加迅猛</div> </li> <li><a href="/article/917.htm" title="wordpress小工具制作" target="_blank">wordpress小工具制作</a> <span class="text-muted">aichenglong</span> <a class="tag" taget="_blank" href="/search/wordpress/1.htm">wordpress</a><a class="tag" taget="_blank" href="/search/%E5%B0%8F%E5%B7%A5%E5%85%B7/1.htm">小工具</a> <div>wordpress 使用侧边栏的小工具,很方便调整页面结构 小工具的制作过程 1 在自己的主题文件中新建一个文件夹(如widget),在文件夹中创建一个php(AWP_posts-category.php) 小工具是一个类,想侧边栏一样,还得使用代码注册,他才可以再后台使用,基本的代码一层不变 <?php class AWP_Post_Category extends WP_Wi</div> </li> <li><a href="/article/1044.htm" title="JS微信分享" target="_blank">JS微信分享</a> <span class="text-muted">AILIKES</span> <a class="tag" taget="_blank" href="/search/js/1.htm">js</a> <div>// 所有功能必须包含在 WeixinApi.ready 中进行    WeixinApi.ready(function(Api) {        // 微信分享的数据            var wxData = {       &nb</div> </li> <li><a href="/article/1171.htm" title="封装探讨" target="_blank">封装探讨</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/JAVA%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1+%E5%B0%81%E8%A3%85/1.htm">JAVA面向对象 封装</a> <div>//封装   属性 方法 将某些东西包装在一起,通过创建对象或使用静态的方法来调用,称为封装;封装其实就是有选择性地公开或隐藏某些信息,它解决了数据的安全性问题,增加代码的可读性和可维护性   在 Aname类中申明三个属性,将其封装在一个类中:通过对象来调用   例如   1: //属性 将其设为私有 姓名 name 可以公开 </div> </li> <li><a href="/article/1298.htm" title="jquery radio/checkbox change事件不能触发的问题" target="_blank">jquery radio/checkbox change事件不能触发的问题</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/jquery/1.htm">jquery</a> <div>我想让radio来控制当前我选择的是机动车还是特种车,如下所示:  <html> <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"><</div> </li> <li><a href="/article/1425.htm" title="AngularJS中安全性措施" target="_blank">AngularJS中安全性措施</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/AngularJS/1.htm">AngularJS</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%85%A8%E6%80%A7/1.htm">安全性</a><a class="tag" taget="_blank" href="/search/XSRF/1.htm">XSRF</a><a class="tag" taget="_blank" href="/search/JSON%E6%BC%8F%E6%B4%9E/1.htm">JSON漏洞</a> <div>        在使用web应用中,安全性是应该首要考虑的一个问题。AngularJS提供了一些辅助机制,用来防护来自两个常见攻击方向的网络攻击。 一.JSON漏洞         当使用一个GET请求获取JSON数组信息的时候(尤其是当这一信息非常敏感,</div> </li> <li><a href="/article/1552.htm" title="[Maven学习笔记九]Maven发布web项目" target="_blank">[Maven学习笔记九]Maven发布web项目</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/maven/1.htm">maven</a> <div>基于Maven的web项目的标准项目结构 user-project     user-core     user-service     user-web        src      </div> </li> <li><a href="/article/1679.htm" title="【Hive七】Hive用户自定义聚合函数(UDAF)" target="_blank">【Hive七】Hive用户自定义聚合函数(UDAF)</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/hive/1.htm">hive</a> <div>用户自定义聚合函数,用户提供的多个入参通过聚合计算(求和、求最大值、求最小值)得到一个聚合计算结果的函数。 问题:UDF也可以提供输入多个参数然后输出一个结果的运算,比如加法运算add(3,5),add这个UDF需要实现UDF的evaluate方法,那么UDF和UDAF的实质分别究竟是什么?   Double evaluate(Double a, Double b)  </div> </li> <li><a href="/article/1806.htm" title="通过 nginx-lua 给 Nginx 增加 OAuth 支持" target="_blank">通过 nginx-lua 给 Nginx 增加 OAuth 支持</a> <span class="text-muted">ronin47</span> <div>前言:我们使用Nginx的Lua中间件建立了OAuth2认证和授权层。如果你也有此打算,阅读下面的文档,实现自动化并获得收益。SeatGeek 在过去几年中取得了发展,我们已经积累了不少针对各种任务的不同管理接口。我们通常为新的展示需求创建新模块,比如我们自己的博客、图表等。我们还定期开发内部工具来处理诸如部署、可视化操作及事件处理等事务。在处理这些事务中,我们使用了几个不同的接口来认证: &n</div> </li> <li><a href="/article/1933.htm" title="利用tomcat-redis-session-manager做session同步时自定义类对象属性保存不上的解决方法" target="_blank">利用tomcat-redis-session-manager做session同步时自定义类对象属性保存不上的解决方法</a> <span class="text-muted">bsr1983</span> <a class="tag" taget="_blank" href="/search/session/1.htm">session</a> <div>在利用tomcat-redis-session-manager做session同步时,遇到了在session保存一个自定义对象时,修改该对象中的某个属性,session未进行序列化,属性没有被存储到redis中。 在 tomcat-redis-session-manager的github上有如下说明: Session Change Tracking As noted in the &qu</div> </li> <li><a href="/article/2060.htm" title="《代码大全》表驱动法-Table Driven Approach-1" target="_blank">《代码大全》表驱动法-Table Driven Approach-1</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a> <div>关于Table Driven Approach的一篇非常好的文章: http://www.codeproject.com/Articles/42732/Table-driven-Approach package com.ljn.base; import java.util.Random; public class TableDriven { public </div> </li> <li><a href="/article/2187.htm" title="Sybase封锁原理" target="_blank">Sybase封锁原理</a> <span class="text-muted">chicony</span> <a class="tag" taget="_blank" href="/search/Sybase/1.htm">Sybase</a> <div>       昨天在操作Sybase IQ12.7时意外操作造成了数据库表锁定,不能删除被锁定表数据也不能往其中写入数据。由于着急往该表抽入数据,因此立马着手解决该表的解锁问题。     无奈此前没有接触过Sybase IQ12.7这套数据库产品,加之当时已属于下班时间无法求助于支持人员支持,因此只有借助搜索引擎强大的</div> </li> <li><a href="/article/2314.htm" title="java异常处理机制" target="_blank">java异常处理机制</a> <span class="text-muted">CrazyMizzz</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>java异常关键字有以下几个,分别为 try catch final throw throws 他们的定义分别为 try:    Opening exception-handling statement. catch:  Captures the exception. finally: Runs its code before terminating</div> </li> <li><a href="/article/2441.htm" title="hive 数据插入DML语法汇总" target="_blank">hive 数据插入DML语法汇总</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/hive/1.htm">hive</a><a class="tag" taget="_blank" href="/search/DML/1.htm">DML</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E6%8F%92%E5%85%A5/1.htm">数据插入</a> <div>Hive的数据插入DML语法汇总1、Loading files into tables语法:1) LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)]解释:1)、上面命令执行环境为hive客户端环境下: hive>l</div> </li> <li><a href="/article/2568.htm" title="工厂设计模式" target="_blank">工厂设计模式</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a> <div>  使用设计模式是促进最佳实践和良好设计的好办法。设计模式可以提供针对常见的编程问题的灵活的解决方案。 工厂模式 工厂模式(Factory)允许你在代码执行时实例化对象。它之所以被称为工厂模式是因为它负责“生产”对象。工厂方法的参数是你要生成的对象对应的类名称。 Example #1 调用工厂方法(带参数) <?phpclass Example{ </div> </li> <li><a href="/article/2695.htm" title="mysql字符串查找函数" target="_blank">mysql字符串查找函数</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a> <div>  FIND_IN_SET(str,strlist) 假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在1到 N 之间。一个字符串列表就是一个由一些被‘,’符号分开的自链组成的字符串。如果第一个参数是一个常数字符串,而第二个是type SET列,则   FIND_IN_SET() 函数被优化,使用比特计算。如果str不在strlist 或st</div> </li> <li><a href="/article/2822.htm" title="jvm内存管理" target="_blank">jvm内存管理</a> <span class="text-muted">easterfly</span> <a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a> <div>一、JVM堆内存的划分 分为年轻代和年老代。年轻代又分为三部分:一个eden,两个survivor。 工作过程是这样的:e区空间满了后,执行minor gc,存活下来的对象放入s0, 对s0仍会进行minor gc,存活下来的的对象放入s1中,对s1同样执行minor gc,依旧存活的对象就放入年老代中; 年老代满了之后会执行major gc,这个是stop the word模式,执行</div> </li> <li><a href="/article/2949.htm" title="CentOS-6.3安装配置JDK-8" target="_blank">CentOS-6.3安装配置JDK-8</a> <span class="text-muted">gengzg</span> <a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a> <div>JAVA_HOME=/usr/java/jdk1.8.0_45 JRE_HOME=/usr/java/jdk1.8.0_45/jre PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib export JAVA_HOME</div> </li> <li><a href="/article/3076.htm" title="【转】关于web路径的获取方法" target="_blank">【转】关于web路径的获取方法</a> <span class="text-muted">huangyc1210</span> <a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/%E8%B7%AF%E5%BE%84/1.htm">路径</a> <div>假定你的web application 名称为news,你在浏览器中输入请求路径:  http://localhost:8080/news/main/list.jsp  则执行下面向行代码后打印出如下结果:  1、 System.out.println(request.getContextPath()); //可返回站点的根路径。也就是项</div> </li> <li><a href="/article/3203.htm" title="php里获取第一个中文首字母并排序" target="_blank">php里获取第一个中文首字母并排序</a> <span class="text-muted">远去的渡口</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a><a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a> <div>很久没来更新博客了,还是觉得工作需要多总结的好。今天来更新一个自己认为比较有成就的问题吧。 最近在做储值结算,需求里结算首页需要按门店的首字母A-Z排序。我的数据结构原本是这样的: Array ( [0] => Array ( [sid] => 2885842 [recetcstoredpay] =&g</div> </li> <li><a href="/article/3330.htm" title="java内部类" target="_blank">java内部类</a> <span class="text-muted">hm4123660</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%86%85%E9%83%A8%E7%B1%BB/1.htm">内部类</a><a class="tag" taget="_blank" href="/search/%E5%8C%BF%E5%90%8D%E5%86%85%E9%83%A8%E7%B1%BB/1.htm">匿名内部类</a><a class="tag" taget="_blank" href="/search/%E6%88%90%E5%91%98%E5%86%85%E9%83%A8%E7%B1%BB/1.htm">成员内部类</a><a class="tag" taget="_blank" href="/search/%E6%96%B9%E6%B3%95%E5%86%85%E9%83%A8%E7%B1%BB/1.htm">方法内部类</a> <div>      在Java中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类。内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.class文件,但是前面冠以外部类的类名和$符号。内部类可以间接解决多继承问题,可以使用内部类继承一个类,外部类继承一个类,实现多继承。      &nb</div> </li> <li><a href="/article/3457.htm" title="Caused by: java.lang.IncompatibleClassChangeError: class org.hibernate.cfg.Exten" target="_blank">Caused by: java.lang.IncompatibleClassChangeError: class org.hibernate.cfg.Exten</a> <span class="text-muted">zhb8015</span> <div>maven pom.xml关于hibernate的配置和异常信息如下,查了好多资料,问题还是没有解决。只知道是包冲突,就是不知道是哪个包....遇到这个问题的分享下是怎么解决的。。   maven pom:   <dependency> <groupId>org.hibernate</groupId> <ar</div> </li> <li><a href="/article/3584.htm" title="Spark 性能相关参数配置详解-任务调度篇" target="_blank">Spark 性能相关参数配置详解-任务调度篇</a> <span class="text-muted">Stark_Summer</span> <a class="tag" taget="_blank" href="/search/spark/1.htm">spark</a><a class="tag" taget="_blank" href="/search/cache/1.htm">cache</a><a class="tag" taget="_blank" href="/search/cpu/1.htm">cpu</a><a class="tag" taget="_blank" href="/search/%E4%BB%BB%E5%8A%A1%E8%B0%83%E5%BA%A6/1.htm">任务调度</a><a class="tag" taget="_blank" href="/search/yarn/1.htm">yarn</a> <div>随着Spark的逐渐成熟完善, 越来越多的可配置参数被添加到Spark中来, 本文试图通过阐述这其中部分参数的工作原理和配置思路, 和大家一起探讨一下如何根据实际场合对Spark进行配置优化。   由于篇幅较长,所以在这里分篇组织,如果要看最新完整的网页版内容,可以戳这里:http://spark-config.readthedocs.org/,主要是便</div> </li> <li><a href="/article/3711.htm" title="css3滤镜" target="_blank">css3滤镜</a> <span class="text-muted">wangkeheng</span> <a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/css/1.htm">css</a> <div>经常看到一些网站的底部有一些灰色的图标,鼠标移入的时候会变亮,开始以为是js操作src或者bg呢,搜索了一下,发现了一个更好的方法:通过css3的滤镜方法。 html代码: <a href='' class='icon'><img src='utv.jpg' /></a> css代码: .icon{-webkit-filter: graysc</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>