HTML代码教程
教程一、基本标志
1.
2.
3.
4.
Html是英文 HyperText Markup Language 的缩写,中文意思是“超文本标志语言”,用它编写的文件(文档)的扩展名是.html或.htm,它们是可供浏览器解释浏览的文件格式。您可以使用记事本、写字板或 FrontPage Editor 等编辑工具来编写Html文件。Html语言使用标志对的方法编写文件,既简单又方便,它通常使用<标志名>标志名>来表示标志的开始和结束(例如标志对),因此在Html文档中这样的标志对都必须是成对使用的。在此教程中,我先讲一下Html的基本标志:
1.
标志用于Html文档的最前边,用来标识Html文档的开始。而标志恰恰相反,它放在Html文档的最后边,用来标识Html文档的结束,两个标志必须一块使用。
2.
和构成Html文档的开头部分,在此标志对之间可以使用
< /title>、等等标志对,这些标志对都是描述Html文档相关信息的标志 对,标志对之间的内容是不会在浏览器的框内显示出来的。两个标志必须一块使用。
3.
是Html文档的主体部分,在此标志对之间可包含
、< /p>、
、 、
、
等等众多的标志,它们所定义的文本、图像等将 会在浏览器的框内显示出来。两个标志必须一块使用。标志中还可以有以下属性:
属性 用途 示例
设置背景颜色。
红色背景
设置文本颜色。
蓝色文本
设置链接颜色。
链接为蓝色
设置已使用的链接的颜色。
设置正在被击中的链接的颜色。
说明:以上各个属性可以结合使用,如
。引号内的rrggbb是 用六个十六进制数表示的RGB(即红、绿、蓝三色的组合)颜色,如#ff0000对应的是红色。此外,还可以使用Html语言所给定的常量名来表示颜 色:Black、White、Green、Maroon、Olive、Navy、Purple、Gray、Yellow、Lime、Agua、 Fuchsia、Silver、Red、Blue和Teal,如表示标志对中的文本使用蓝色显示在浏览器的框内。
4.
使用过浏览器的人可能都会注意到浏览器窗口最上边蓝色部分显示的文本信息,那些信息一般是网页的“主题”,要将您的网页的主题显示到浏览器的顶部其实很简 单,只要在
标志对之间加入您要显示的文本即可。注意:
< /title>标志对只能放在标志对之间。
下面是一个综合的例子,仔细阅读,您便可以了解以上各个标志对在一个Html文档中的布局或所使用的位置。
例1 Html文档中基本标志的使用
显示在浏览器最上边蓝色条中的文本
红色背景、蓝色文本
教程二、格式标志
1.
2.
3.
4.
5.
6.
上一个教程中我们讲了Html文档的基本标志,但我们还不知道怎样在浏览器中显示文本之类的东西,这正是我们在教程二中将要谈到的。在学习之前,必须强调 一下,我们这个教程中所讲的格式标志统统都是用于
标志对之间的。
1.
标志对是用来创建一个段落,在此标志对之间加入的文本将按照段落的格式显示在浏览器上。另外,
标志还可以使用align属性,它用来说明对齐方式,语法是:
。align可以是Left(左对齐)、Center(居中)和Right(右对齐)三个值中的任何一个。如
表示标志对中的文本使用居中的对齐方式。
2.
是一个很简单的标志,它没有结束标志,因为它用来创建一个回车换行,这么一说我想您该会使用了吧。在 的使用上还有一定的技巧,如果您把 加在
标志对的外边,将创建一个大的回车换行,即
前边和后边的文本的行与行之间的距离比较大,若放在
的里边则
前边和后边的文本的行与行之间的距离将比较小,您不妨试试看。
3.
在
标志对之间加入的文本将会在浏览器中按两边缩进的方式显示出来。
4.
用来创建一个普通的列表,
用来创建列表中的上层项目,
用来创建列表中最下层项目,
和
都必须放在
标志对之间。看一下下边的例子您就会明白了:
例2 创建一个普通列表
一个普通列表
中国城市
北京
上海
广州
美国城市
华盛顿
芝加哥
纽约
此例在浏览器中的显示如下:
中国城市
北京
上海
广州
美国城市
华盛顿
芝加哥
纽约
5.
标志对用来创建一个标有数字的列表;
标志对用来创建一个标有圆点的列表;
标志对只能在
或
标志对之间使用,此标志对用来创建一个列表项,若
放在
之间则每个列表项加上一个数字,若在
之间则每个列表项加上一个圆点。请看下边的例子:
例3 标有数字或圆点的列表
中国城市
北京
上海
广州
此例在浏览器中的显示如下:
中国城市
1. 北京
2. 上海
3. 广州
美国城市
? 华盛顿
? 芝加哥
? 纽约
6.
标志对用来排版大块Html段落,也用于格式化表,此标志对的用法与
标志对非常相似,同样有align对齐方式属性,读者可以自己试试看。
教程三、文本标志
1.
2.
……
3.
4.
5.
上一个教程中我们已经讲了如何在浏览器中输出文本,以及文本输出的格式,这个教程中我们将谈一谈文本输出的字体,如斜体、黑体字、下加一划线等等。在本教程的最后给出了一个文本标志的综合示例,希望读者能认真阅读。
1.
标志对用来对文本进行预处理操作。
2.
……
Html语言提供了一系列对文本中的标题进行操作的标志对:
……
,即一共有六对标题的标志对。
是最大的标题,而
则是最小的标题,也即是标志中 h 后面的数字越大标题文本就越小。如果您的Html文档中需要输出标题文本的话,便可以使用这六对标题标志对中的任何一对。
3.
经常使用 WORD 的人对这三对标志对一定很快就能掌握。 用来使文本以黑体字的形式输出; 用来使文本以斜体字的形式输出; 用来使文本以下加一划线的形式输出。后边将会有一个综合的例子,所以此处就不再作详细讲解了。
4.
这些标志对的用法和上边的一样,差别只是在于输出的文本字体不太一样而已。 用来输出打字机风格字体的文本; 用来输出引用方式的字体,通常是斜体; 用来输出需要强调的文本(通常是斜体加黑体); 则用来输出加重文本(通常也是斜体加黑体)。这些标志对的示例也将在后边综合的例子中出现。
5.
是一对很有用的标志对,它可以对输出文本的字体大小、颜色进行随意地改变,这些改变主要是通过对它的两个属性 size 和 color 的控制来实现的。size属性用来改变字体的大小,它可以取值:-1、1和+1;而color属性则用来改变文本的颜色,颜色的取值是我们在教程一中讲过的十六进制RGB颜色码或Html语言给定的颜色常量名。具体用法请看下边综合的例子。
例4 文本标志的综合示例
文本标志的综合示例
最大的标题
使用h3的标题
最大的标题
黑体字文本
斜体字文本
下加一划线文本
打字机风格的文本
引用方式的文本
强调的文本
加重的文本
size取值“+1”、color取值“red”时的文本
本例在浏览器中显示的结果如下:
最大的标题
使用h3的标题
最大的标题
黑体字文本
斜体字文本
下加一划线文本
打字机风格的文本
引用方式的文本
强调的文本
加重的文本
size取值“+1”、color取值“red”时的文本
教程四、图像标志
1.
2.
再简单朴素的网页如果只有文字而没有图像的话将失去许多活力,图像在网页制作中是非常重要的一个方面,Html语言也专门提供了
标志来处理图像的输出。
1.
标志并不是真正地把图像给加入到Html文档中,而是将标志对的src属性赋值,这个值是图形文件的文件名,当然包括路径,这个路径可以是相对路径,也可以是网址。 实际上就是通过路径将图形文件嵌入到您的文档中。您可能并不知道什么是相对路径,我现在就来讲一讲相对路径。所谓相对路径是指您所要链接或嵌入到当前 Html文档的文件与当前文件的相对位置所形成的路径。假如您的Html文件与图形文件(文件名假设是logo.gif)在同一个目录下,则可以将代码写 成 ;假如您的图形文件放在当前的Html文档所在目录的一个子目录(子目录名假设是p_w_picpaths)下,则代码应为& lt;img src="p_w_picpaths/logo.gif">;假如您的图形文件放在当前的Html文档所在目录的上层目录(目录名假设是home)下,则相对路 径就必须是准网址了,即用“../”表示您的网站,然后在后边紧跟文件在您的网站中的路径,假设home是您的网站下的一个目录,则代码应为 ,若home是您的网站下的目录king下边的一个子目录,则代码应该变为 了。现在您对相对路径应该有所了解了吧!
必须强调一下,src属性在 标志中是必须赋值的,是标志中不可缺少的一部分。除此之外, 标志还有alt、align、border、width和height属性。align是图像的对齐方式,在前边的教程中已经讲了很多了,这里就不再提了。border属性是图像的边框,可以取大于或者等于0的整数,默认单位是像素。width和Height属性是图像的宽和高,默认单位也是象素。alt属性是当鼠标移动到图像上时显示的文本。
2.
标志是在Html文档中加入一条水平线,它可以直接使用,具有size、color、width和noshade属性。size是设置水平线的厚度,而width是设定水平线的宽度,默认单位是像素。想必大家对color属性已经很熟悉了,在此就不再用多讲。noshade属性不用赋值,而是直接加入标志即可使用,它是用来加入一条没有阴影的水平线(不加入此属性水平线将有阴影)。
下面是本教程的一个综合例子。
例5 图像标志举例
图像标志的综合示例
本例在浏览其中的显示结果如下:
教程五、表格标志
1.
2.
3.
表格标志对于制作网页是很重要的,我希望您能记住这一点,现在很多很多网页都是使用多重表格,主要是因为表格不但可以固定文本或图像的输出,而且还可以任意的进行背景和前景颜色的设置。但愿您也能熟练使用表格来制作您的主页。
1.
标志对用来创建一个表格。它有以下属性:
属性 用途
设置表格的背景色。
设置边框的宽度,若不设置此属性,则边框宽度默认为0。
设置边框的颜色。
设置边框明亮部分的颜色(当border的值大于等于1时才有用)。
设置边框昏暗部分的颜色(当border的值大于等于1时才有用)。
设置表格格子之间空间的大小。
设置表格格子边框与其内部内容之间空间的大小。
设置表格的宽度,单位用绝对像素值或总宽度的百分比。
说明:以上各个属性可以结合使用。有关宽度、大小的单位用绝对像素值。而有关颜色的属性使用十六进制RGB颜色码或Html语言给定的颜色常量名(如 Silver 为银色)
2.
标志对用来创建表格中的每一行。 此标志对只能放在标志对之间使用,而在此标志对之间加入文本将是无用的,因为 在 之间只能紧跟 标志对才是有效的语 法, 标志对用来创建表格中一行中的每一个格子, 此标志对也只有放在 标志对之间才是有效的,您想要输入的文本也只有放在< /td>标志对中才有效(即才能够显示出来)。、 < /tr>和 标志对的关系如下所示:
最外层,创建一个表格-->
创建一行-->
创建一个格子(这里总共创建了三个格子)-->
要输出的文本只能放在此处
要输出的文本只能放在此处
要输出的文本只能放在此处
最外层-->
此外,
还有align和valign属性。align是水平对齐方式,取值为left(左对齐)、center(居中)、right(右对齐);而valign是垂直对齐方式,取值为top(靠顶端对齐)、middle(居中间对齐)或bottom(靠底部对齐)。具有width、colspan、rowspan和nowrap属性。width是格子的宽度,单位用绝对像素值或总宽度的百分比;colspan设置一个表格格子跨占的列数(缺省值为1);rowspan设置一个表格格子跨占的行数(缺省值为1);nowrap禁止表格格子内的内容自动断行。
3.
标志对用来设置表格头,通常是黑体居中文字。
看一看下边的例子就明白以上标志对的用法了。
例6 表格标志的综合示例
表格标志的综合示例
bordercolorlight="#7D7DFF" bordercolordark="#0000A0">
意大利
英格兰
西班牙
AC米兰
佛罗伦萨
曼联
纽卡斯尔
巴塞罗那
×××社会
尤文图斯
桑普多利亚
利物浦
阿申纳
×××马德里
……
拉齐奥
国际米兰
切尔西
米德尔斯堡
马德里竞技
……
本例在浏览器中显示的结果如下:
意大利 英格兰 西班牙
AC米兰 佛罗伦萨 曼联 纽卡斯尔 巴塞罗那 ×××社会
尤文图斯 桑普多利亚 利物浦 阿申纳 ×××马德里 ……
拉齐奥 国际米兰 切尔西 米德尔斯堡 马德里竞技 ……
教程六、链接标志
1.
2.
教程六的内容不是很多,而且很简单。链接是Html语言的一大特色,正因为有了它,我们对内容的浏览才能够具有灵活性和网络性。
1.
本标志对的属性href是无论如何不可缺少的,标志对之间加入需要链接的文本或图像(链接图像即加入 标志)。href的值可以是URL形式,即网址或相对路径,也可以是mailto:形式,即发送E-Mail形式。对于第一种情况,语法为 ,这就能创建一个超文本链接了,例如:
这是我的网站
对于第二种情况,语法为 ,这就创建了一个自动发送电子邮件的链接,mailto:后边紧跟想要制动发送的电子邮件的地址(即E-Mail地址),例如:
这是我的电子信箱(E-Mail信箱)
此外, 还具有target属性,此属性用来指明浏览的目标帧,我们将在讲帧标志时作详细的说明,这里您只要知道如果不使用target属性,当浏览者点击了链接之后将在原来的浏览器窗口中浏览新的Html文档,若target的值等于“_blank”,点击链接后将会打开一个新的浏览器窗口来浏览新的Html文档。例如:
这是我的网站
2.
标志对要结合 标志对使用才有效果。 标志对用来在Html文档中创建一个标签(即做一个记号),属性name是不可缺少的,它的值也即是标签名,例如:
此处创建了一个标签
创建标签是为了在Html文档中创建一些链接,以便能够找到同一文档中的有标签的地方。要找到标签所在地,就必须使用 标志对。例如要找到“标签名”这个标签,就要编写如下代码:
点击此处将使浏览器跳到“标签名”处
注意:href属性赋的值若是标签的名字,必须在标签名前边加一个“#”号。
下面是本教程的一个综合示例:
例7 链接标志的综合示例
链接标志的综合示例
创建标签处
欢迎想要学习网页制作的同学访问我的网站
http://www.netsh.com/
alt="欢迎访问"网页制作"" border="0" width="468" height="60">
本网站的主要内容
Html教程
动态Html教程
ASP教程
JavaScript教程
VBScript教程
友情链接
我要留言
作者介绍
欢迎给我来信,我的E-Mail是:
[email protected]
点击此处回到标签处
本例在浏览器中显示的结果如下:
教程七、帧标志
1.
2.
3.
帧是由英文Frame翻译过来的,它可以用来向浏览器窗口中装载多个Html文件。即每个Html文件占据一个帧,而多个帧可以同时显示在同一个浏览器窗 口中,它们组成了一个最大的帧,也即是一个包含多个Html文档的Html文件(我称它为主文档)。帧通常的使用方法是在一个帧中放置目录(即可供选择的链接),然后将Html文件显示在另一个帧中。
1.
标志对放在帧的主文档的标志对的外边,也可以嵌在其他帧文档中,并且可以嵌套使用。此标志对用来定义主文档中有几个帧并且各个帧是如何排列的。它具有rows和cols属性,使用标志时这两个属性至少必须选择一个,否则浏览器只显示第一个定义的帧,剩下的一概不管, 标志对也就没有起到任何作用了。rows用来规定主文档中各个帧的行定位,而cols用来规定主文档中各个帧的列定位。这两个属性的取值可以是百分数、绝对像素值或星号(“*”),其中星号代表那些未被说明的空间,如果同一个属性中出现多个星号则将剩下的未被说明的空间平均分配。同时,所有的帧按照rows和cols的值从左到右,然后从上到下排列。示例如下:
总共有三个按列排列的帧,每个帧占整个浏览器窗口的1/3
总共有三个按行排列的帧,第一个帧占整个浏览器窗口的40%,剩下的空间平均分配给另外两个帧
总共有六个帧,先是在第一行中从左到右排列三个帧,然后在第二行中从左到右再排列三个帧,即两行三列,所占空间依据rows和cols属性的值,其中200的单位是像素
2.
标志放在
之间,用来定义某一个具体的帧。 标志具有src和name属性,这两个属性都是必须赋值的。src是此帧的源Html文件名(包括网络路径,即相对路径或网址),浏览器将会在此帧中显示src指定的Html文件;name是此帧的名字,这个名字是用来供超文本链接标志中的target属性用来指定链接的Html文件将显示在哪一个帧中。例如定义了一个帧,名字是main,在帧中显示的Html文件名是jc.htm,则代码是 ,当您有一个链接,在点击了这个链接后,文件new.htm将要显示在名为main的帧中,则代码为 需要链接的文本 。这样一来,就可以在一个帧中建立网站的目录,加入一系列链接,当点击链接以后在另一个帧中显示被链接的Html文件。
此外, 标志还有scrolling和noresize属性,scrolling用来指定是否显示滚动轴,取值可以是“yes”(显示)、“no”(不显示)或“auto”(若需要则会自动显示,不需要则自动不显示)。noresize属性直接加入标志中即可使用,不需赋值,它用来禁止用户调整一个帧的大小。
3.
标志对也是放在
标志对之间,用来在那些不支持帧的浏览器中显示文本或图像信息。在此标志对之间先紧跟标志对,然后才可以使用我们在教程七以前讲过的任何标志。
下边是一个综合示例:
例8 帧标志的综合示例
主文档:
帧标志的综合示例
对不起,您的浏览器不支持“帧”!
menu.htm
目录
目录
链接到第一页
链接到第二页
page1.htm
第一页
这是第一页!
page2.htm
第二页
这是第二页!
教程八、表单标志
1.
2.
3.
4.
表单在Web网页中用来给访问者填写信息,从而能获得用户信息,使网页具有交互的功能。一般是将表单设计在一个Html文档中,当用户填写完信息后做提交(submit)操作,于是表单的内容就从客户端的浏览器传送到服务器上,经过服务器上的 ASP 或 CGI 等处理程序处理后,再将用户所需信息传送回客户端的浏览器上,这样网页就具有了交互性。这里我们只讲怎样使用Html标志来设计表单。
1.
标志对用来创建一个表单,也即定义表单的开始和结束位置,在标志对之间的一切都属于表单的内容。标志对之间。 标志中共提供了八种类型的输入区域,具体是哪一种类型由type属性来决定。请看下边列表:
type属性取值 输入区域类型 输入区域示例
单行的文本输入区域,size与maxlength属性用来定义此种输入区域显示的尺寸大小与输入的最大字符数 将表单内容提交给服务器的按钮 将表单内容全部清除,重新填写的按钮 一个复选框,checked属性用来设置该复选框缺省时是否被选中,右边示例中使用了三个复选框 你喜欢哪些教程:
Html入门 动态Html ASP 隐藏区域,用户不能在其中输入,用来预设某些要传送的信息
使用图像来代替Submit按钮,图像的源文件名由src属性指定,用户点击后,表单中的信息和点击位置的X、Y坐标一起传送给服务器 输入密码的区域,当用户输入密码时,区域内将会显示"*"号 请输入您的密码: 单选按钮类型,checked属性用来设置该单选框缺省时是否被选中,右边示例中使用了三个单选框 10月3日中韩国奥队比赛结果会是:
中国胜 平局 韩国胜
此外,八种类型的输入区域有一个公共的属性name,此属性给每一个输入区域一个名字。这个名字与输入区域是一一对应的,即一个输入区域对应一个名字。服务器就是通过调用某一输入区域的名字的value属性来获得该区域的数据的。而value属性是另一个公共属性,它可用来指定输入区域的缺省值。
3.
标志对用来创建一个下拉列表框或可以复选的列表框。此标志对用于
标志对之间。具有multiple、name和size属性。multiple属性不用赋值,直接加入标志中即可使用,加入了此属性后列表框就成了可多选的了;name是此列表框的名字,它与上边讲的name属性作用是一样的;size属性用来设置列表的高度,缺省时值为1,若没有设置(加入)multiple属性,显示的将是一个弹出式的列表框。
标志用来指定列表框中的一个选项,它放在 标志对之间。此标志具 有selected和value属性,selected用来指定默认的选项,value属性用来给 指定的那一个选项赋值,这 个值是要传送到服务器上的,服务器正是通过调用区域的名字的value属性来获得该区域选中的数据项的。请看下例:
Html代码 浏览器显示的结果
请选择最喜欢的男歌星:
请选择最喜欢的女歌星:
4.
用来创建一个可以输入多行的文本框,此标志对用于
您的意见对我很重要:
教程九、声音标志
1.
2. 想在主页中加入自己的声音吗?想让别人进入你的主页时听到一声亲切的问候或一段简要的介绍吗?那么快跟我来,轻松搞定,非常简单.
一般说来在主页中加入声音有三种方法,一是用标志加入背景音乐;二是用标志嵌入声音; 另外一种则是用ActiveX控件中的ActiveMovie控件。第三种方法稍微复杂一些,在网页多媒体开发方面有一定的用处。我们在这里还是讲最常用 的前两种吧。
1.
用标志加入背景音乐格式如下: 其中loop属性为0时表示循环播放, 但bgsound标记只能适用于IE。有很多朋友使用FRONTPAGE做主页,只须在页面中点击右键,选择页面属性,选定背景乐就可以了。 其原理是使用bgsound标记。
2.
用标志嵌入声音引用格式如下: (该标志属性在文末有详细说明)。声音文件使用的是Windows的.wav或WWW的.au格式,但最适合做主页背景音乐的 是以.mid为后缀的MIDI音乐文件。实际上>标志还可以引用如动画文件、VRML文件等。
现在我们来看一下怎样利用Windows自带的录音软件来录制你自己的声音。
接上话筒,在桌面控制面板上点击右键打开音量控制面板,去掉MICROPHPONE的静音(如下图)。如果没有MICROPHPONE的选项,可打开控制面板上选项中的属性,在MICROPHPONE的复选框上打勾。
再选择WINDOWS开始菜单程序中的附件,打开娱乐中的录音机,录制自己的声音(这就是放在主页中的声音了).你可以说一句"欢迎你来到我的主页",录下来后,保存成WAVE格式的文件,放到网站中,再用第一步的方法加到主页中就可以了.
附:标记语法说明
SRC="文件名称和路径":设置背景音乐的路径和名称;
AUTOSTART="TRUE/FALSE":设置是否音乐文件一传完后就开始播放,默认为FALSE(否)
LOOP=" TRUE/FALSE/整数":设置重播次数,TRUE为无限次重播,FALSE为不重播,LOOP=某个整数,为重播多少次。
VOLUME="0-100":设置音量,默认为系统本身的音量;
STARTTIME="分:秒":设置歌曲开始播放的时间,如STARTTIME="00:20"为从第20秒开始播放;
ENDTIME="分:秒":设置歌曲播放结束的时间 ;
WIDTH和HIGH="整数":设置控制面板的宽和高;
CONTROLS="CONSOLE/SMALLCONSOLE /PLAYBUTTON/PAUSEBUTTON/STOPBUTTON/VOLUMELEVER":设置控制面板的外观 。CONSOLE为正常大小的面板,SMALLCONSOLE为较小的面板,PLAYBUTTON为显示播放按钮,PAUSEBUTTON为显示暂停按 钮, STOPBUTTON为显示停止按钮,VOLUMELEVER为显示音量调节,若要隐藏控制面板可用HIDDEN=TRUE。
你可能感兴趣的:(浏览器,记事本,中文意思)
CDN如何实现内容分发
黑石云
边缘计算
CDN(内容分发网络)实现内容分发主要依赖于其分布式架构和一系列关键技术。以下是CDN实现内容分发的主要步骤和机制:一、DNS解析与重定向当用户在浏览器中输入域名请求访问某个网站时,首先会向本地DNS服务器发起域名解析请求。如果本地DNS服务器没有缓存该域名的解析结果,它会递归地查询根DNS服务器和授权DNS服务器,直到获得域名对应的IP地址。如果该域名配置了CDN服务,本地DNS服务器会将域名的
什么是多任务,单线程,多线程,超线程
weixin_34378969
操作系统
单任务操作系统:就是一次只能运行一个程序,不能同时运行多个程序,比如DOS系统;多任务系统则可以同时运行多个程序,比如我们现在常用的WindowsXP、Win7等系统。举例子:在运行一个软件时,想要玩另一个软件就必须把上面运行的软件关掉才能运行新的软件,你玩×××游戏时,还想再开个cs游戏,就得关掉×××游戏!想再开个uc浏览器,就的把cs关掉,你不关,在开新程序时系统会替你关的!多任务系统嘛,如
wireshark解密TLS流量
头顶路由器
网络工程师
原理:通过设置环境变量截取浏览器的master_secret,进而实现解密TLS的目的。未解密的TLS包:1.设置系统属性环境变量右键我的电脑点击属性>>高级系统设置>>环境变量
HTML<form>标签
新生派
html 前端 javascript
例子具有两个输入字段和一个提交按钮的HTML表单:Firstname:Lastname:下面有更多“自己尝试”的示例。定义和用法标签用于创建供用户输入的HTML表单。元素可以包含下列一个或多个表单元素:浏览器支持属性全局属性标签支持HTML中的全局属性。事件属性标签支持HTML中的事件属性。更多示例例子带有复选框的HTML表单:IhaveabikeIhaveacarIhaveaboat例子带有单选
HTML<!DOCTYPE>声明
新生派
html 前端 javascript
例子TitleofthedocumentThecontentofthedocument......定义和用法所有HTML文档都必须以声明开始。声明不是HTML标签。它是向浏览器提供的有关预期文档类型的“信息”。在HTML5中,声明很简单:浏览器支持较旧的HTML文档在较旧的文档(HTML4或XHTML)中,声明更为复杂,因为声明必须引用DTD(文档类型定义)。HTML4.01:XHTML1.1:提
如何使用wireshark 解密TLS-SSL报文
风清扬-独孤九剑
wireshark 测试工具 网络
目录前言原理操作前言现在网站都是https或者很多站点都支持http2。这些站点为了保证数据的安全都通过TLS/SSL加密过,用wireshark并不能很好的去解析报文,我们就需要用wireshark去解密这些报文。我主要讲解下mac在chrome怎么配置的,浏览器一定要支持HTTP2。原理获取TLS握手阶段生成的密钥,也就是说通过Chrome浏览器DEBUG日志中的握手信息生成密钥,wiresh
什么是DNS缓存?DNS缓存有什么用?
国科云
缓存
DNS缓存在DNS解析过程中发挥了重要作用,有效提升了解析速度和访问体验。那什么是DNS缓存,DNS缓存有什么用呢?接下来国科云简单介绍下。什么是DNS缓存?标准的DNS解析过程,需要进行全球递归查询,依次去请求根服务器、顶级服务器、权威服务器,最终获得解析记录,返回到客户端浏览器。这个过程涉及多级DNS服务器,产生明显的时延,影响最终的解析和访问速度。基于此,DNS系统中引入了缓存机制。DNS服
使用Python抓取网页信息
weixin_34292287
python c#
之前用C#帮朋友写了一个抓取网页信息的程序,搞得好复杂,今天朋友又要让下网页数据,好多啊,又想偷懒,可是不想用C#了,于是想到了Python,大概花了两个小时,用记事本敲的,然后在IDLE(PythonGUI)里面测试。发现Python之类的解释性语言很不错,又不用编译,写个脚本就好了。代码如下:#-*-coding:gb2312-*-importsysimporturllibimportre#从
如何利用 Dexie.js 管理前端状态或持久化复杂数据
maply
Node.js vue 前端 javascript 状态模式 Dexie.js 前端状态管理 前端状态持久化 vue.js
使用Dexie.js管理前端状态或持久化复杂数据Dexie.js是一个功能强大的IndexedDB封装库,不仅适用于简单的离线存储,还非常适合管理前端状态和持久化复杂数据。以下是如何利用Dexie.js管理前端状态或持久化复杂数据的详细介绍:1.Dexie.js管理前端状态的优势数据持久化:将应用状态存储在浏览器中,即使刷新页面或关闭浏览器,状态仍然存在。异步数据操作:支持异步读取和写入,提高性能
如何使用python爬图片
小雨帅
python 开发语言
一、说明使用Python爬取图片(或其他类型的文件)通常是为了自动化从互联网上下载图片的过程,这样可以节省人工下载的时间和精力,尤其是在需要大量图片时,下面将介绍两种方法,方法二步骤稍微多些,但可以爬取防爬虫的网站上的图片。二、准备安装python,谷歌浏览器,下载chromedriver,注意chromedriver的版本必须兼容谷歌浏览器,否则在运行python代码时会报错,在windows操
Axios封装一款前端项目网络请求实用插件
smart_ljh
前端 vue.js vuejs axios 网络
前端项目开发非常经典的插件axios大家都很熟悉,它是一个Promise网络请求库,可以用于浏览器和node.js支持的项目中。像一直以来比较火的Vue.js开发的几乎所有项目网络请求用的都是axios。那么我们在实际的项目中,有时候为了便于维护、请求头信息统一处理、统一拦截器设置以及响应数据统一处理,需要在项目中针对axios封装一个网络请求插件。接下来就介绍一下针对以上这些输出具体的解决方案和
移动端、微信小程序兼容性问题汇总(持续更新……
前端小程序
safari浏览器字体不能自动随网页缩放调整大小-webkit-text-size-adjust:100%点击有灰色透明背景-webkit-tap-highlight-color:rgba(0,0,0,0);3.微信、QQ内置浏览器视频自动全屏非腾讯域名的视频地址都会4.iphoneX默认网页显示在安全区域内,不全屏5.flex布局不兼容,加上前缀也不行(常见于华为或旧版iOS)display:-
流量分析利器arkime的学习之路(二)---API接口
胖哥王老师
流量分析 学习笔记 网络协议 学习 arkime API
前文回忆《流量分析利器arkime的学习之路(一)---安装部署》概述注意点Arkime对所有API调用都使用摘要身份验证,因此请确保在库或curl命令中启用摘要身份验证。学习如何进行API调用的最简单方法是打开浏览器的javascript控制台,观察ArkimeUI正在进行的调用,它使用所有相同的API。注意:许多API端点都需要一个数据库字段名称,这与您在搜索表达式中使用的名称不同。查看数据库
浏览器输入本地地址打开本地服务器html
小姐姐呀~
javascript html5 前端
html文件可用本地IP访问全局安装一下代码1.找到html文件所在的文件夹,在目录栏输入cmd按下Enter,会弹出小黑盒2.复制粘贴到小黑盒中npminstall-ghttp-serverhttp-server-p8080就可以用本地ip地址访问了,例如(http://192.168.2.123:8080/cat.html)
python使用Flask框架创建一个简单的动态日历
镜花照无眠
# Python python flask 开发语言
0.运行效果运行代码,然后在浏览器中访问http://127.0.0.1:5000/,将看到一个动态日历,能够通过点击按钮切换月份。1.安装Flask首先,确保你已经安装了Flask。如果没有,可以使用以下命令安装:pipinstallFlask测试:fromflaskimportFlask#fromflaskimportFlask,render_template,requestapp=Flask
如何使用 Python 和 Selenium WebDriver 获取 localStorage
潮易
python selenium 开发语言
如何使用Python和SeleniumWebDriver获取localStorage要使用Python和SeleniumWebDriver获取localStorage,您可以遵循以下步骤:###1.安装必要的库首先,您需要安装selenium库。可以通过pip进行安装:```bashpipinstallselenium```###2.下载WebDriver根据您的浏览器类型(如Chrome、Fir
C#的学习方法和思路,全部整理在这了!
编程乐趣
c# 学习方法 开发语言
大家好,我是编程乐趣。今天梳理下,我从写公众号以来,发表过的有关学习编程的自学方法、架构、学习路线、重构、编程经验等内容,希望对大家有点启发。一、自学编程的方法用这个方法学习C#的,一年后都变成高级工程师了!自学C#,要懂得善用MSDN自学C#,要懂得用好对象浏览器C#自学建议:避开新手易犯的错误一个很简单却能让你快速掌握C#的方法二、学习架构的思考DDD与三层架构,一定就是DDD好?程序员,真有
用python操作浏览器的三种方式_经验 | python 操作浏览器的三种方式
weixin_39642619
第一种:selenium导入浏览器驱动,用get方法打开浏览器,例如:importtimefromseleniumimportwebdriverdefmac():#browser=webdriver.Chrome()#browser=webdriver.Firefox()browser=webdriver.Ie()browser.implicitly_wait(5)browser.get("htt
百度指数+selenium+request+比特指纹浏览器+pywebview+pandas+flask过程性
万山y
python selenium 爬虫 flask pandas
1.cookies和headrs问题使用selenium获得的cookies测试没有问题,但是获得的heards头不可以使用,经过测试比较需要添加或者修改几项重点的heards为{'Cipher-Text':'1704885072633_1704970047346_SlMkwPX0ZnotTaSrpOEx50xhLlPT5iMH867nxTtYuapcdPhsh2d2ooVE2F+RSm+yhIF
Jmeter-1-JMeter代理录制脚本
karry_孙二
Jmeter Jmeter
jmeter代理录制脚本1.原理:把jmeter作为代理服务器2.代理:相当于中转站3.流程:浏览器(客户端)--->jmeter--->服务器步骤1.设置浏览器为代理模式2.jm新建代理服务器,设置3.设置过滤规则录制脚本:jmeter只能录制html包含模式:.*192\.168\.0\.203.*(.要用\来转译)排除模式:.*\.js.*|.*\.css.*|.*\.png.*|.*\.g
【Python爬虫实战】全面解析 DrissionPage:简化 Python 浏览器自动化的三种模式
易辰君
python爬虫 python 爬虫 开发语言
个人主页:易辰君-CSDN博客系列专栏:https://blog.csdn.net/2401_86688088/category_12797772.html目录前言一、DrissionPage简介(一)ChromiumPage(二)WebPage(三)SessionPage(四)三大模块总结二、ChromiumPage(一)初始化ChromiumPage(二)基本操作(三)等待元素加载(四)执行J
当遇到 502 错误(Bad Gateway)怎么办
rgrgrwfe
gateway
很多安装雷池社区版的时候,配置完成,访问的时候可能会遇到当前问题,如何解决呢?客户端,浏览器排查1.刷新页面和清除缓存首先尝试刷新页面,因为有时候502错误可能是由于网络临时波动导致服务器无法连接。清除浏览器缓存和Cookie,因为旧的缓存数据可能会干扰新的网页请求。不同浏览器清除缓存的方式有所不同,以谷歌浏览器为例,可以通过点击浏览器右上角的三个点,选择“更多工具”-“清除浏览数据”,然后在弹出
Magnet Player:一款基于Web的磁力链媒体播放器
rgrgrwfe
前端
MagnetPlayer:一款基于Web的磁力链媒体播放器项目地址:https://gitcode.com/gh_mirrors/ma/magnet-player是一个创新的开源项目,它允许用户直接在浏览器中播放磁力链(MagnetURI)内容,无需下载或安装任何桌面应用程序。这个项目的独特之处在于它结合了现代Web技术,为用户提供了便捷、安全且跨平台的在线媒体播放体验。技术分析WebTorren
HTTP 状态码全知道
计算机毕设定制辅导-无忧学长
# HTTP http 网络协议 网络
一、HTTP状态码为何如此重要?在Web开发的世界里,HTTP状态码就像是服务器与客户端之间的“秘密语言”。当你在浏览器地址栏输入网址按下回车键,或是点击网页上的链接、提交表单数据,浏览器都会向Web服务器发送HTTP请求,而服务器处理完请求后,会返回一个包含状态码的响应消息。这个三位数字的状态码,虽然简短,却蕴含着丰富的信息,它清晰地反映了服务器对请求的处理结果,是服务器与客户端沟通的关键一环。
PYTHON中字符串(str)类型和比特(bytes)类型转换
齐柏林fly 艇
python
bytes主要是用于二进制的数据处理的数据类型,在网络编程中,由于服务器和浏览器只能识别bytes类型数据。所以就需要进行数据类型转换例如socket编程中的.send()和.recv()就需要用到str类型和bytes类型转换一、str转bytes:第一种:在str类型前加b,即b"str"第二种:在str后加.encode("utf-8"),即str.encode("utf-8"),编码方式默
【vite】vite配置文件 vite.config.js
小羊不乖
前端 前端框架 node.js 前端 javascript vue.js vue
文章目录声明环境变量配置文件`.env.dev`开发环境`.env.prod`生产环境在配置中使用环境变量Vite中的plugin配置@vitejs/plugin-vue:默认插件@vitejs/plugin-legacy:兼容旧版浏览器unplugin-auto-import/vite:自动导入Vue和Vue相关库的APIunplugin-vue-components/vite:自动注册Vue组
用java 实现 同意授权给公众号访问其信息。这通常通过将用户重定向到一个由微信提供的授权页面完成。
用心去追梦
java 微信 开发语言
在Java中实现微信公众号的OAuth2.0网页授权流程,主要涉及构建一个HTTP请求来重定向用户到微信提供的授权页面。以下是一个简单的示例,演示如何创建这个重定向链接并将其发送给客户端浏览器。步骤1:构建授权URL首先,你需要根据微信官方文档构造授权URL。这个URL将包含你的应用ID(appid)、回调地址(redirect_uri)、响应类型(response_type=code)、授权作用
Node.js - HTTP
蒜蓉大猩猩
Node.js http 网络协议 网络 javascript php 后端 node.js
1.HTTP请求HTTP(HypertextTransferProtocol,超文本传输协议)是客户端和服务器之间通信的基础协议。HTTP请求是由客户端(通常是浏览器、手机应用或其他网络工具)发送给服务器的消息,用来请求资源或执行操作。简单来讲就是向服务器发送请求,服务器返回响应给用户端HTTP请求由三个主要部分组成:1.1请求行包含请求方法、目标资源路径、协议版本。GET/index.htmlH
Node.js+Express 开发之Cookie、Session 使用详解
MINO吖
Node node cookie session express
为什么有cookie和session?因为HTTP协议是没有状态的,当用户再次访问网站时,没法判断之前是否登陆过,于是就有了cookies和session,用来保存用户的一些信息。cookie和session区别?cookie是存放在客户端浏览器的,每个域名下通常限制为50个cookie,每个cookie的值大小限制为4K。session是存放在服务器端的,可以存储无限大的数据,但大量的sessi
【使用webrtc-streamer解析rtsp视频流】
m0_74824592
vip1024p webrtc
webrtc-streamerWebRTC(WebReal-TimeCommunications)是一项实时通讯技术,它允许网络应用或者站点,在不借助中间媒介的情况下,建立浏览器之间点对点(Peer-to-Peer)的连接,实现视频流和(或)音频流或者其他任意数据的传输。WebRTC包含的这些标准使用户在无需安装任何插件或者第三方的软件的情况下,创建点对点(Peer-to-Peer)的数据分享和电
Linux的Initrd机制
被触发
linux
Linux 的 initrd 技术是一个非常普遍使用的机制,linux2.6 内核的 initrd 的文件格式由原来的文件系统镜像文件转变成了 cpio 格式,变化不仅反映在文件格式上, linux 内核对这两种格式的 initrd 的处理有着截然的不同。本文首先介绍了什么是 initrd 技术,然后分别介绍了 Linux2.4 内核和 2.6 内核的 initrd 的处理流程。最后通过对 Lin
maven本地仓库路径修改
bitcarter
maven
默认maven本地仓库路径:C:\Users\Administrator\.m2
修改maven本地仓库路径方法:
1.打开E:\maven\apache-maven-2.2.1\conf\settings.xml
2.找到
 
XSD和XML中的命名空间
darrenzhu
xml xsd schema namespace 命名空间
http://www.360doc.com/content/12/0418/10/9437165_204585479.shtml
http://blog.csdn.net/wanghuan203/article/details/9203621
http://blog.csdn.net/wanghuan203/article/details/9204337
http://www.cn
Java 求素数运算
周凡杨
java 算法 素数
网络上对求素数之解数不胜数,我在此总结归纳一下,同时对一些编码,加以改进,效率有成倍热提高。
第一种:
原理: 6N(+-)1法 任何一个自然数,总可以表示成为如下的形式之一: 6N,6N+1,6N+2,6N+3,6N+4,6N+5 (N=0,1,2,…)
java 单例模式
g21121
java
想必单例模式大家都不会陌生,有如下两种方式来实现单例模式:
class Singleton {
private static Singleton instance=new Singleton();
private Singleton(){}
static Singleton getInstance() {
return instance;
}
Linux下Mysql源码安装
510888780
mysql
1.假设已经有mysql-5.6.23-linux-glibc2.5-x86_64.tar.gz
(1)创建mysql的安装目录及数据库存放目录
解压缩下载的源码包,目录结构,特殊指定的目录除外:
32位和64位操作系统
墙头上一根草
32位和64位操作系统
32位和64位操作系统是指:CPU一次处理数据的能力是32位还是64位。现在市场上的CPU一般都是64位的,但是这些CPU并不是真正意义上的64 位CPU,里面依然保留了大部分32位的技术,只是进行了部分64位的改进。32位和64位的区别还涉及了内存的寻址方面,32位系统的最大寻址空间是2 的32次方= 4294967296(bit)= 4(GB)左右,而64位系统的最大寻址空间的寻址空间则达到了
我的spring学习笔记10-轻量级_Spring框架
aijuans
Spring 3
一、问题提问:
→ 请简单介绍一下什么是轻量级?
轻量级(Leightweight)是相对于一些重量级的容器来说的,比如Spring的核心是一个轻量级的容器,Spring的核心包在文件容量上只有不到1M大小,使用Spring核心包所需要的资源也是很少的,您甚至可以在小型设备中使用Spring。
 
mongodb 环境搭建及简单CURD
antlove
Web Install curd NoSQL mongo
一 搭建mongodb环境
1. 在mongo官网下载mongodb
2. 在本地创建目录 "D:\Program Files\mongodb-win32-i386-2.6.4\data\db"
3. 运行mongodb服务 [mongod.exe --dbpath "D:\Program Files\mongodb-win32-i386-2.6.4\data\
数据字典和动态视图
百合不是茶
oracle 数据字典 动态视图 系统和对象权限
数据字典(data dictionary)是 Oracle 数据库的一个重要组成部分,这是一组用于记录数据库信息的只读(read-only)表。随着数据库的启动而启动,数据库关闭时数据字典也关闭 数据字典中包含
数据库中所有方案对象(schema object)的定义(包括表,视图,索引,簇,同义词,序列,过程,函数,包,触发器等等)
数据库为一
多线程编程一般规则
bijian1013
java thread 多线程 java多线程
如果两个工两个以上的线程都修改一个对象,那么把执行修改的方法定义为被同步的,如果对象更新影响到只读方法,那么只读方法也要定义成同步的。
不要滥用同步。如果在一个对象内的不同的方法访问的不是同一个数据,就不要将方法设置为synchronized的。
将文件或目录拷贝到另一个Linux系统的命令scp
bijian1013
linux unix scp
一.功能说明 scp就是security copy,用于将文件或者目录从一个Linux系统拷贝到另一个Linux系统下。scp传输数据用的是SSH协议,保证了数据传输的安全,其格式如下: scp 远程用户名@IP地址:文件的绝对路径
【持久化框架MyBatis3五】MyBatis3一对多关联查询
bit1129
Mybatis3
以教员和课程为例介绍一对多关联关系,在这里认为一个教员可以叫多门课程,而一门课程只有1个教员教,这种关系在实际中不太常见,通过教员和课程是多对多的关系。
示例数据:
地址表:
CREATE TABLE ADDRESSES
(
ADDR_ID INT(11) NOT NULL AUTO_INCREMENT,
STREET VAR
cookie状态判断引发的查找问题
bitcarter
form cgi
先说一下我们的业务背景:
1.前台将图片和文本通过form表单提交到后台,图片我们都做了base64的编码,并且前台图片进行了压缩
2.form中action是一个cgi服务
3.后台cgi服务同时供PC,H5,APP
4.后台cgi中调用公共的cookie状态判断方法(公共的,大家都用,几年了没有问题)
问题:(折腾两天。。。。)
1.PC端cgi服务正常调用,cookie判断没
通过Nginx,Tomcat访问日志(access log)记录请求耗时
ronin47
一、Nginx通过$upstream_response_time $request_time统计请求和后台服务响应时间
nginx.conf使用配置方式:
log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_r
java-67- n个骰子的点数。 把n个骰子扔在地上,所有骰子朝上一面的点数之和为S。输入n,打印出S的所有可能的值出现的概率。
bylijinnan
java
public class ProbabilityOfDice {
/**
* Q67 n个骰子的点数
* 把n个骰子扔在地上,所有骰子朝上一面的点数之和为S。输入n,打印出S的所有可能的值出现的概率。
* 在以下求解过程中,我们把骰子看作是有序的。
* 例如当n=2时,我们认为(1,2)和(2,1)是两种不同的情况
*/
private stati
看别人的博客,觉得心情很好
Cb123456
博客 心情
以为写博客,就是总结,就和日记一样吧,同时也在督促自己。今天看了好长时间博客:
职业规划:
http://www.iteye.com/blogs/subjects/zhiyeguihua
android学习:
1.http://byandby.i
[JWFD开源工作流]尝试用原生代码引擎实现循环反馈拓扑分析
comsci
工作流
我们已经不满足于仅仅跳跃一次,通过对引擎的升级,今天我测试了一下循环反馈模式,大概跑了200圈,引擎报一个溢出错误
在一个流程图的结束节点中嵌入一段方程,每次引擎运行到这个节点的时候,通过实时编译器GM模块,计算这个方程,计算结果与预设值进行比较,符合条件则跳跃到开始节点,继续新一轮拓扑分析,直到遇到
JS常用的事件及方法
cwqcwqmax9
js
事件 描述
onactivate 当对象设置为活动元素时触发。
onafterupdate 当成功更新数据源对象中的关联对象后在数据绑定对象上触发。
onbeforeactivate 对象要被设置为当前元素前立即触发。
onbeforecut 当选中区从文档中删除之前在源对象触发。
onbeforedeactivate 在 activeElement 从当前对象变为父文档其它对象之前立即
正则表达式验证日期格式
dashuaifu
正则表达式 IT其它 java其它
正则表达式验证日期格式
function isDate(d){
var v = d.match(/^(\d{4})-(\d{1,2})-(\d{1,2})$/i);
if(!v) {
this.focus();
return false;
}
}
<input value="2000-8-8" onblu
Yii CModel.rules() 方法 、validate预定义完整列表、以及说说验证
dcj3sjt126com
yii
public array rules () {return} array 要调用 validate() 时应用的有效性规则。 返回属性的有效性规则。声明验证规则,应重写此方法。 每个规则是数组具有以下结构:array('attribute list', 'validator name', 'on'=>'scenario name', ...validation
UITextAttributeTextColor = deprecated in iOS 7.0
dcj3sjt126com
ios
In this lesson we used the key "UITextAttributeTextColor" to change the color of the UINavigationBar appearance to white. This prompts a warning "first deprecated in iOS 7.0."
Ins
判断一个数是质数的几种方法
EmmaZhao
Math python
质数也叫素数,是只能被1和它本身整除的正整数,最小的质数是2,目前发现的最大的质数是p=2^57885161-1【注1】。
判断一个数是质数的最简单的方法如下:
def isPrime1(n):
for i in range(2, n):
if n % i == 0:
return False
return True
但是在上面的方法中有一些冗余的计算,所以
SpringSecurity工作原理小解读
坏我一锅粥
SpringSecurity
SecurityContextPersistenceFilter
ConcurrentSessionFilter
WebAsyncManagerIntegrationFilter
HeaderWriterFilter
CsrfFilter
LogoutFilter
Use
JS实现自适应宽度的Tag切换
ini
JavaScript html Web css html5
效果体验:http://hovertree.com/texiao/js/3.htm
该效果使用纯JavaScript代码,实现TAB页切换效果,TAB标签根据内容自适应宽度,点击TAB标签切换内容页。
HTML文件代码:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
Hbase Rest API : 数据查询
kane_xie
REST hbase
hbase(hadoop)是用java编写的,有些语言(例如python)能够对它提供良好的支持,但也有很多语言使用起来并不是那么方便,比如c#只能通过thrift访问。Rest就能很好的解决这个问题。Hbase的org.apache.hadoop.hbase.rest包提供了rest接口,它内嵌了jetty作为servlet容器。
启动命令:./bin/hbase rest s
JQuery实现鼠标拖动元素移动位置(源码+注释)
明子健
jquery js 源码 拖动 鼠标
欢迎讨论指正!
print.html代码:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
<title>发票打印</title>
&l
Postgresql 连表更新字段语法 update
qifeifei
PostgreSQL
下面这段sql本来目的是想更新条件下的数据,可是这段sql却更新了整个表的数据。sql如下:
UPDATE tops_visa.visa_order
SET op_audit_abort_pass_date = now()
FROM
tops_visa.visa_order as t1
INNER JOIN tops_visa.visa_visitor as t2
ON t1.
将redis,memcache结合使用的方案?
tcrct
redis cache
公司架构上使用了阿里云的服务,由于阿里的kvstore收费相当高,打算自建,自建后就需要自己维护,所以就有了一个想法,针对kvstore(redis)及ocs(memcache)的特点,想自己开发一个cache层,将需要用到list,set,map等redis方法的继续使用redis来完成,将整条记录放在memcache下,即findbyid,save等时就memcache,其它就对应使用redi
开发中遇到的诡异的bug
wudixiaotie
bug
今天我们服务器组遇到个问题:
我们的服务是从Kafka里面取出数据,然后把offset存储到ssdb中,每个topic和partition都对应ssdb中不同的key,服务启动之后,每次kafka数据更新我们这边收到消息,然后存储之后就发现ssdb的值偶尔是-2,这就奇怪了,最开始我们是在代码中打印存储的日志,发现没什么问题,后来去查看ssdb的日志,才发现里面每次set的时候都会对同一个key