python之路2.0_Python之路【第二十一篇】:JS基礎

1.2 ECMAScript

盡管 ECMAScript 是一個重要的標準,但它并不是 JavaScript 唯一的部分,當然,也不是唯一被標準化的部分。實際上,一個完整的 JavaScript 實現是由以下 3 個不同部分組成的:

●?核心(ECMAScript)

●?文檔對象模型(DOM) Document object model (整合js,css,html)

●?瀏覽器對象模型(BOM) Broswer object model(整合js和瀏覽器)

●?Javascript 在開發中絕大多數情況是基于對象的.也是面向對象的.

ad0e2fc997d840a77a9c064df235852c.png

簡單地說,ECMAScript描述以下內容:

● 語法

● 類型

● 語句

● 關鍵字

● 保留字

● 運算符

● 對象(封裝、繼承、多態)基于對象的語言,使用對象

1.3 JavaScript的引入方式

Title

二、JavaScript基礎

2.1 變量

x=12

y=16

z=x+y

在代數中,我們使用字母(比如x)來保存值(比如12)。

通過上面的表達式z=x+y,我們能夠計算出z的值為28.

在JavaScript中,這些字母被稱為變量。

0變量時弱類型的(很隨便);

1、聲明變量時不用聲明變量類型,全部使用var關鍵字;

1 var a;

2、一行可以聲明多個變量,并且可以是不同類型;

1 var name='simon', age=23, job='teacher';

3、聲明變量時,可以不用var,如果不用var,那么它是全局變量。

4、變量命名,首字母只能是字母,下劃線,$美元符 三選一,且區分大小寫,x與X是兩個變量

5、變量還應遵循以下命名規則:

Camel 標記法

首字母是小寫的,接下來的字母都以大寫字符開頭。例如:

var myTestValue = 0, mySecondValue = "hi";

Pascal 標記法

首字母是大寫的,接下來的字母都以大寫字符開頭。例如:

Var MyTestValue = 0, MySecondValue = "hi";

匈牙利類型標記法

在以 Pascal 標記法命名的變量前附加一個小寫字母(或小寫字母序列),說明該變量的類型。例如,i 表示整數,s 表示字符串,如下所示“

Var iMyTestValue = 0, sMySecondValue = "hi";

注意:

function func1(){

var a = 123;

b=456

}

func1();

// alert(a);

// alert(b);

// 不推薦

2.2 基礎規范

1、每行結束可以不加分號,沒有分號會以換行符作為每行的結束

a=1;b=2;

a=1 b=2;------錯誤

a=1b=2

//推薦

a=1;

b=2;

{

a=1;

b=2;

//推薦加tab

a=1;

b=2;

}

2、注釋 支持多行注釋和單行注釋 /*? */? //

3、使用{}來封裝代碼塊

2.3 常量和標識符

常量?:直接在程序中出現的數據值

標識符:

1、由不以數字開頭的字母、數字、下劃線(_)、美元符號($)組成

2、常用于表示函數、變量等的名稱/

3、例如:_abc,$abc,abc,abc123是標識符,而1abc不是

4、JavaScript語言中代表特定含義的詞稱為保留字,不允許程序再定義為標識符

3576299a354c90ef5f4b874eb34f23ae.png

d8f769c0a4543fe28a715b752f62896d.png

三、 數據類型

ee920bf49350bd0a9d8782ba6fd4b68f.png

fa10a55bf914b49e7de53bf4101aa787.png

3.1 數字類型(Number)

簡介

最基本的數據類型

不區分整型數值和浮點型數值

所有數字都采用64位浮點格式存儲,相當于Java和C語言中的double格式

能表示的最大值是±1.7976931348623157 x 10308能表示的最小值是±5 x 10 -324

整數:

在JavaScript中10進制的整數由數字的序列組成

精確表達的范圍是?-9007199254740992 (-253) 到 9007199254740992 (253)

超出范圍的整數,精確度將受影響

浮點數:

使用小數點記錄數據

例如:3.4,5.6

使用指數記錄數據

例如:4.3e23 = 4.3 x 1023

16進制和8進制數的表達

16進制數據前面加上0x,八進制前面加0

16進制數是由0-9,A-F等16個字符組成

8進制數由0-7等8個數字組成

16進制和8進制與2進制的換算

# 2進制: 1111 0011 1101 0100 16進制:0xF3D4 10進制:62420# 2進制: 1 111 001 111 010 100 8進制:0171724

3.2 字符串(String)

簡介

是由Unicode字符、數字、標點符號組成的序列

字符串常量首尾由單引號或雙引號括起

JavaScript中沒有字符類型

常用特殊字符在字符串中的表達

字符串中部分特殊字符必須加上右劃線\

常用的轉義字符 \n:換行 \':單引號 \":雙引號 \\:右劃線

String數據類型的使用

● 特殊字符的使用方法和效果

● Unicode的插入方法

varstr="\u4f60\u597d\n歡迎來到\"JavaScript世界\"";

alert(str);

3.3 布爾型(Boolean)

簡介

Boolean類型僅有兩個值:true和false,也代表1和0,實際運算中true=1,false=0

布爾值也可以看作on/off、yes/no、1/0對應true/false

Boolean值主要用于JavaScript的控制語句,例如

if (x==1){

y=y+1;

}else {

y=y-1;

}

3.4 Null & Undefined

Undefined 類型

Undefined 類型只有一個值,即 undefined。當聲明的變量未初始化時,該變量的默認值是 undefined。

當函數無明確返回值時,返回的也是值 "undefined";

Null 類型

另一種只有一個值的類型是 Null,它只有一個專用值 null,即它的字面量。值 undefined 實際上是從值 null 派生來的,因此 ECMAScript 把它們定義為相等的。

盡管這兩個值相等,但它們的含義不同。undefined 是聲明了變量但未對其初始化時賦予該變量的值,null 則用于表示尚未存在的對象(在討論 typeof 運算符時,簡單地介紹過這一點)。如果函數或方法要返回的是對象,那么找不到該對象時,返回的通常是 null。

var person=new Person()

var person=null

3.5 數據類型轉換

JavaScript屬于松散類型的程序語言

變量在聲明的時候并不需要指定數據類型

變量只有在賦值的時候才會確定數據類型

表達式中包含不同類型數據則在計算過程中會強制進行類別轉換

數字 +字符串:數字轉換為字符串

數字 +布爾值:true轉換為1,false轉換為0

字符串 + 布爾值:布爾值轉換為字符串true或false

3.6強制類型轉換函數

函數parseInt: 強制轉換成整數 例如parseInt("6.12")=6 ; parseInt(“12a")=12 ; parseInt(“a12")=NaN ;parseInt(“1a2")=1

函數parseFloat: 強制轉換成浮點數 parseFloat("6.12")=6.12

函數eval: 將字符串強制轉換為表達式并返回結果 eval("1+1")=2 ; eval("1<2")=true

3.7?類型查詢函數(typeof)

ECMAScript提供了typeof運算符來判斷一個值是否在某種類型的范圍內。可以用這種運算符判斷一個值是否表示一種原始類型:如果它是原始類型,還可以判斷它表示哪種原始類型。

函數typeof :查詢數值當前類型? (string / number / boolean /object )

例如typeof("test"+3) "string"例如typeof(null) "object "例如typeof(true+1) "number"例如typeof(true-false) "number"

// typeof:區分基本數據類型

console.log(typeof 123);

console.log(typeof "hello");

console.log(typeof true);

console.log(typeof null);

console.log(typeofundefined);

console.log(typeof [1,2,3,4]);

console.log(typeof {"name":"simon"});

顯示如下:

9da85a5d0ed15f18fe030fa9b7b9f551.png

四、ECMAScript運算符

4.1?ECMAScript 算數運算符

加(+)、 減(-)、 乘(*) 、除(/) 、余數(% ) 加、減、乘、除、余數和數學中的運算方法一樣 例如:9/2=4.5,4*5=20,9%2=1

-除了可以表示減號還可以表示負號 例如:x=-y

+除了可以表示加法運算還可以用于字符串的連接 例如:"abc"+"def"="abcdef"

遞增(+ +)、遞減(- -)

假如x=2,那么x++表達式執行后的值為3,x--表達式執行后的值為1

i++相當于i=i+1,i--相當于i=i-1遞增和遞減運算符可以放在變量前也可以放在變量后:--i

var i=1;

console.log(i++);

console.log(++i);

console.log(i--);

console.log(--i);

一元加減法:

var a=1;

var b=1;

a=-a; //a=-1

var c="10";

alert(typeof(c));

c=+c; //類型轉換

alert(typeof(c));

// -------------------

var d="yuan";

d=+d;

alert(d);//NaN:屬于Number類型的一個特殊值,當遇到將字符串轉成數字無效時,就會得到一個NaN數據

alert(typeof(d));//Number

//NaN特點:

var n=NaN;

alert(n>3);

alert(n<3);

alert(n==3);

alert(n==NaN);

alert(n!=NaN);//NaN參與的所有的運算都是false,除了!=

五、ECMAScript邏輯運算符

等于 ( == ) 、不等于( != ) 、 大于( > ) 、 小于( < ) ?大于等于(>=) 、小于等于(<=)

與 (&&) 、或(||) 、非(!)

&& 1 = 1 1 || 1 = 1

&& 0 = 0 1 || 0 = 1

&& 0 = 0 0 || 0 = 0

!0=1

!1=0

邏輯 AND 運算符(&&)

邏輯 AND 運算的運算數可以是任何類型的,不止是 Boolean 值。

如果某個運算數不是原始的 Boolean 型值,邏輯 AND 運算并不一定返回 Boolean 值:

如果某個運算數是 null,返回 null。

如果某個運算數是 NaN,返回 NaN。

如果某個運算數是 undefined,返回undefined。

邏輯 OR 運算符(||)

與邏輯 AND 運算符相似,如果某個運算數不是 Boolean 值,邏輯 OR 運算并不一定返回 Boolean 值

六、ECMAScript賦值運算符

賦值 =JavaScript中=代表賦值,兩個等號==表示判斷是否相等

例如,x=1表示給x賦值為1

if (x==1){...}程序表示當x與1相等時

if(x==“on”){…}程序表示當x與“on”相等時

配合其他運算符形成的簡化表達式

例如i+=1相當于i=i+1,x&=y相當于x=x&y

實例:

2 == “2”

2 === “2”

4 != “4”

4 !== “4”

var a = 2; var b = 4;

var c = a--a;

var c = a--a;

var c = a--a;

var c = a--a;

七、ECMAScript等性運算符

執行類型轉換的規則如下:

如果一個運算數是 Boolean 值,在檢查相等性之前,把它轉換成數字值。false 轉換成 0,true 為 1。

如果一個運算數是字符串,另一個是數字,在檢查相等性之前,要嘗試把字符串轉換成數字。

如果一個運算數是對象,另一個是字符串,在檢查相等性之前,要嘗試把對象轉換成字符串。

如果一個運算數是對象,另一個是數字,在檢查相等性之前,要嘗試把對象轉換成數字。

在比較時,該運算符還遵守下列規則:

值 null 和 undefined 相等。

在檢查相等性時,不能把 null 和 undefined 轉換成其他值。

如果某個運算數是 NaN,等號將返回 false,非等號將返回 true。

如果兩個運算數都是對象,那么比較的是它們的引用值。如果兩個運算數指向同一對象,那么等號返回 true,否則兩個運算數不等。

f9568d6818ccf11259d7feb95e27ee74.png

八、ECMAScript關系運算符(重要)

var bResult = "Blue" < "alpha";

alert(bResult); //輸出 true

在上面的例子中,字符串 "Blue" 小于 "alpha",因為字母 B 的字符代碼是 66,字母 a 的字符代碼是 97。

比較數字和字符串

另一種棘手的狀況發生在比較兩個字符串形式的數字時,比如:

var bResult = "25" < "3";

alert(bResult); //輸出 "true"

上面這段代碼比較的是字符串 "25" 和 "3"。兩個運算數都是字符串,所以比較的是它們的字符代碼("2" 的字符代碼是 50,"3" 的字符代碼是 51)。

不過,如果把某個運算數該為數字,那么結果就有趣了:

var bResult = "25" < 3;

alert(bResult); //輸出 "false"

這里,字符串 "25" 將被轉換成數字 25,然后與數字 3 進行比較,結果不出所料。

總結:

比較運算符兩側如果一個是數字類型,一個是其他類型,會將其類型轉換成數字類型。

比較運算符兩側如果都是字符串類型,比較的最高位的asc碼,如果最高位相等,繼續取第二位比較。

九、Boolean運算符(重要)

var temp=new Object();// false;[];0; null; undefined;object(new Object();)

if(temp){

console.log("yuan")

}else{

console.log("alex")

}

十、全等號和非全等號

等號和非全等號的同類運算符是全等號和非全等號。這兩個運算符所做的與等號和非等號相同,只是它們在檢查相等性前,不執行類型轉換。

十一、控制語句

11.1 if控制語句

if-else基本格式

if (表達式){

語句1;

......

}else{

語句2;

.....

}

功能說明

如果表達式的值為true則執行語句1,

否則執行語句2

a8e11e8dff956bc54eef638e5a143a79.png

var x= (new Date()).getDay();

//獲取今天的星期值,0為星期天

var y;

if ( (x==6) || (x==0) ) {

y="周末";

}else{

y="工作日";

}

alert(y);

//等價于

y="工作日";

if ( (x==6) || (x==0) ) {

y="周末";

}

if可以單獨使用

if語句嵌套格式

if (表達式1) {

語句1;

}else if (表達式2){

語句2;

}else if (表達式3){

語句3;

} else{

語句4;

}

057079614310bdd428cfcb673d6cbc86.png

if (x==1){

y="星期一";

}else if (x==2){

y="星期二";

...

}else if (x==6){

y="星期六";

}else if (x==0){

y="星期日";

}else{

y="未定義";

11.2 switch 選擇控制語句

switch基本格式

switch (表達式) {

case 值1:語句1;break;

case 值2:語句2;break;

case 值3:語句3;break;

default:語句4;

}

53aecf792d4257189bcb59f145a565f8.png

switch(x){

case 1:y="星期一"; break;

case 2:y="星期二"; break;

case 3:y="星期三"; break;

case 4:y="星期四"; break;

case 5:y="星期五"; break;

case 6:y="星期六"; break;

case 7:y="星期日"; break;

default: y="未定義";

}

switch比else if結構更加簡潔清晰,使程序可讀性更強,效率更高。

switch為什么高效率?

首先要看一個問題,if 語句適用范圍比較廣,只要是 boolean 表達式都可以用 if 判斷;而 switch 只能對基本類型進行數值比較。兩者的可比性就僅限在兩個基本類型比較的范圍內。

說到基本類型的數值比較,那當然要有兩個數。然后重點來了——

if 語句每一句都是獨立的,看下面的語句:

if (a == 1) ...

else if (a == 2) ...

這樣 a 要被讀入寄存器兩次,1 和 2 分別被讀入寄存器一次。于是你是否發現其實 a 讀兩次是有點多余的,在你全部比較完之前只需要一次讀入寄存器就行了,其余都是額外開銷。但是 if 語句必須每次都把里面的兩個數從內存拿出來讀到寄存器,它不知道你其實比較的是同一個 a。

于是 switch case 就出來了,把上面的改成 switch case 版本:

switch (a) {

case 0:

break;

case 1:

}

總結:

1.switch用來根據一個整型值進行多路分支,并且編譯器可以對多路分支進行優化

2.switch-case只將表達式計算一次,然后將表達式的值與每個case的值比較,進而選

擇執行哪一個case的語句塊

3.if..else 的判斷條件范圍較廣,每條語句基本上獨立的,每次判斷時都要條件加載

一次。

所以在多路分支時用switch比if..else if .. else結構要效率高。

十二、for循環控制語句

for循環基本格式

for (初始化;條件;增量){

語句1;

...

}

功能說明

實現條件循環,當條件成立時,執行語句1,否則跳出循環體

5fc4e063465d577e2a0c129646804dce.png

var attr=[111,222,333];

// for (var i=0; i

// document.write(i);

// document.write("
");

// document.write(attr[i])

// document.write("
");

// }

// for (var i in attr){

// document.write(i);

// document.write("
");

// document.write(attr[i])

// document.write("
");

// }

for (var i=1;i<=7;i++){

document.write("hello");

document.write("
");

}

----------------------------------------------

var arr=[1,"hello",true]//var dic={"1":"111"}

for (var i in arr){

console.log(i)

console.log(arr[i])

}

注意:

doms=document.getElementsByTagName("p");

for (var i in doms){

console.log(i); // 0 1 2 length item namedItem

//console.log(doms[i])

}

//循環的是你獲取的th一個DOM元素集,for in用來循環對象的所有屬性,dom元素集包含了你上面輸出的屬性。

//如果你只要循環dom對象的話,可以用for循環:

for (var i=0;i

console.log(i) ; // 0 1 2

//console.log(doms[i])

}

結論:for i in 不推薦使用

十三、while循環控制語句

while循環基本格式

while (條件){

語句1;

. . .

}

功能說明

運行功能和for類似,當條件成立循環執行語句大括號{}內的語句,否則跳出循環

88e4bd5fac6fda11ec5272e15e8fc945.png

var i=1;

while (i<=7) {

document.write("hello");

document.write("
");

i++;

}

//循環輸出H1到H7的字體大小

/* sayhello是定義的函數名,前面必須加上function和空格*/

functionsayHello(){

varhellostr;

varmyname=prompt("請問您貴姓?","朱銳");

hellostr="您好,"+myname+'先生,歡迎進入"探索之旅"!';

alert(hellostr);

document.write(hellostr);

}

//這里是對前面定義的函數進行調用

sayHello();

練習:分別用for循環和while循環計算出1-100的和?

while循環實現:

// while循環實現

var x=0;

var i=1;

while (i<=100){

x+=i;

i++;

}

console.log(x)

for循環實現:

// for循環實現

var sum=0;

for (var i=0;i<101;i++){

sum+=i;

}

console.log(sum)

十四、異常處理

try {

//這段代碼從上往下運行,其中任何一個語句拋出異常該代碼塊就結束運行

}

catch (e) {

// 如果try代碼塊中拋出了異常,catch代碼塊中的代碼就會被執行。

//e是一個局部變量,用來指向Error對象或者其他拋出的對象

}

finally {

//無論try中代碼是否有異常拋出(甚至是try代碼塊中有return語句),finally代碼塊中始終會被執行。

}

// 異常

try {

console.log(123);

throw Error("define error")

}

catch(e){

console.log(e)

}

finally{

console.log("finally")

}

顯示:

360e10d0032146ed3f0bc82903531449.png

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/443607.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/443607.shtml
英文地址,請注明出處:http://en.pswp.cn/news/443607.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

solr4 mysql自動更新_(solr系列:五) solr定時實時重建索引和增量更新

將mysql中的數據導入到了solr中之后&#xff0c;如果數據庫中的數據有變動&#xff0c;solr中還是第一次導入的舊的數據&#xff0c;那該如何是好呢&#xff1f;該如何實現mysql數據庫中的數據定時同步到solr中呢&#xff1f;下面將做詳細的介紹。準備工作要做好&#xff1a;1、…

mysql pydev_pydev-python 鏈接mysql數據庫(mac系統)

在mac os上安裝MySQLdb&#xff0c;遇到了非常多問題&#xff0c;總結一下&#xff1a;首先。假設用sudo easy_install mysql-python命令安裝&#xff0c;基本上不會成功的&#xff0c;原因有兩個&#xff1a;一是找不到mysql_config位置&#xff0c;二是如今基本上安裝的是64位…

MySQL多個線程同時寫數據_多個線程可以同時將數據寫入文件嗎?

同步聲明可以做到這一點。嘗試下面的代碼&#xff0c;我在類似的情況下使用。package hrblib;import java.io.*;public class FileOp {static int nStatsCount 0;static public String getContents(String sFileName) {try {BufferedReader oReader new BufferedReader(new F…

Java在Linux下創建文件,文件夾,刪除,拷貝文件的命令

1.創建&#xff0c;刪除文件夾,復制文件夾 mkdir,rmdir如:mkdir -p dir1/dir2 //-p表示遞歸創建文件夾 cp -r /tmp/a /root/a //拷貝不強制覆蓋cp -rf /tmp/a /root/a //拷貝強制覆蓋 2.創建&#xff0c;刪除文件 vi&#xff0c;touch都可以創建文件。如:vi fileNametouch f…

python 拼多多_拼多多現重大BUG被“薅羊毛”,教你如何用Python簡單褥羊毛

import timefrom urllib.parse import parse_qsimport requestsfrom bs4 import BeautifulSoupfrom selenium import webdriverfrom selenium.common.exceptions import *from selenium.webdriver.support.wait import WebDriverWait# 額外抽取的授權模塊from utils import aut…

上海交通大學python期末考試樣題加解析_上海交通大學python期末考試樣題加解析...

一、選擇題: 將唯一正確的選項寫在題前括號中.每題2分.【】(1) 本課程的目標定位是什么?[A] 學習Python語言[B] 學習計算機的工作原理[C] 學習各種算法[D] 學習用計算機解決問題【】(2) 下列哪個標識符是合法的?[A] var-name [B] !#$% [C] _100 [D] elif【】(3) 執行下列語句…

mysql 安裝測試ok_tpcc-mysql安裝測試與使用的實例教程

1&#xff1a;下載tpcc-mysql的壓縮包&#xff0c;從下面的網站進行下載也可直接從葉總博客直接下載&#xff1a;我這邊使用的就是后者。2&#xff1a;安裝tpcc-mysql[rootmxqmongodb2 tpccmysql]# gunzip tpcc-mysql-src.tgz[rootmxqmongodb2 tpccmysql]# tar xf tpcc-mysql-s…

python多線程寫同一文件_Python多線程寫文件實例

# -*- coding: utf-8 -*-import threading多線程生成日志工具__author ["yangfei" ]#該方法主要用于寫入300行WARN日志def writeWarnLog(file):count0;while count<300:try:file.write(2012-11-28 22:51:01|zookeeper|WARN|m1|172.17.1.15\n)count1except Except…

Tomcat6.0.37,tomcat6.0.37,下訪問Web項目,jsp項目不需要輸入項目名稱和端口號的配置方法...

1.不需要數據項目名稱就可以訪問項目的配置方法如下&#xff1a; 首先到你的Tomcat下的conf文件夾下找到server.xml文件&#xff0c;打開后修改為&#xff1a; <Host name"localhost" appBase"webapps"unpackWARs"true" autoDeploy"tru…

java合并list_java合并list方法代碼實例

這篇文章主要介紹了java合并list方法代碼實例,文中通過示例代碼介紹的非常詳細&#xff0c;對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下List包括List接口以及List接口的所有實現類。因為List接口實現了Collection接口&#xff0c;所以List接口擁有Collec…

java math 函數_Java中Math類常用函數總結

Java中比較常用的幾個數學公式的總結&#xff1a;//取整&#xff0c;返回小于目標函數的最大整數,如下將會返回-2Math.floor(-1.8)&#xff1b;//取整&#xff0c;返回發育目標數的最小整數Math.ceil()//四舍五入取整Math.round()//計算平方根Math.sqrt()//計算立方根Math.cbrt…

java asc碼_Java中ASC碼與字符互相轉化

package com.ljq.test;/*** Java中ASC碼與字符互相轉化** author jiqinlin**/public class ASCTest {private static int ascNum;private static char strChar;public static void main(String[] args) {System.out.println(getAsc("a"));System.out.println(backcha…

java上傳png_java上傳png圖片出現紅色背景

java圖片上傳出現紅色背景java圖片服務器上傳圖片都很正常&#xff0c;唯獨上傳png圖片時&#xff0c;png圖片變成紅色背景原因是讀取上傳數據時用的是ImageIO.read(inputstream)方法public static BufferedImage getImages(byte[] data) throws IOException {ByteArrayInputSt…

java 引用隊列_Java中管理資源的引用隊列相關原理解析

當對象改變其可達性狀態時&#xff0c;對該對象的引用就可能會被置于引用隊列(reference queue)中。這些隊列被垃圾回收器用來與我們的代碼溝通有關對象可達性變化的情況。這些隊列是探測可達性變化的最佳方式&#xff0c;盡管我們也可以通過檢查get方法的返回值是不是null來探…

Tomcat 替換項目圖標

1.首先制作一個32*32像素的圖標&#xff0c;命名為favicon.ico這里名稱必須是和Tomcat的webapps下的ROOT下的一樣。 2.把制作好的圖標放到你要部署的Web項目的images目錄下&#xff0c;如果你的Web項目有過濾器等&#xff0c;要給后綴名為.ico的圖標放行。 3.最后你就可以在你需…

hp 導出日志 遠程管理卡_惠普服務器遠程管理卡安裝詳解

可以遠程管理服務器。帶惠普基于Web的網絡資源管理和性能監視工具HP Toptools惠普遠程管理卡的主要功能是可以實現對服務器的遠程監控&#xff0c;其中包括察看日志、遠程診斷、遠程開/關機、重啟等等。基于惠普遠程管理卡的重要功能&#xff0c;本文將著重介紹惠普遠程管理卡的…

java 錯誤登陸次數_純java代碼實現登陸次數驗證,登陸錯誤5次之后鎖定30分鐘

本方法因為是根據思路純手寫&#xff0c;代碼可以再簡化&#xff0c;功能嘗試沒問題&#xff0c;最主要就是在登陸驗證中的邏輯&#xff0c;checkLogin()方法是登錄前的驗證&#xff0c;而真正的登陸方式采用的是Shiro&#xff0c;若不是采用Shiro登陸&#xff0c;將該邏輯采用…

java 監聽器 分類_java過濾器和監聽器詳解 分類: 學習專區

過濾器1、Filter工作原理(執行流程)當客戶端發出Web資源的請求時&#xff0c;Web服務器根據應用程序配置文件設置的過濾規則進行檢查&#xff0c;若客戶請求滿足過濾規則&#xff0c;則對客戶請求&#xff0f;響應進行攔截&#xff0c;對請求頭和請求數據進行檢查或改動&#x…

linux java啟動腳本文件_不錯的linux下通用的java程序啟動腳本

#!/bin/sh#該腳本為Linux下啟動java程序的通用腳本。即可以作為開機自啟動service腳本被調用&#xff0c;#也可以作為啟動java程序的獨立腳本來使用。##Author: tudaxia.com, Date: 2011/6/7##警告!!!&#xff1a;該腳本stop部分使用系統kill命令來強制終止指定的java程序進程。…

linux心跳包檢測代碼_OpenSSL心跳包越界讀敏感信息泄漏漏洞

發布日期&#xff1a;2014-04-10CVE ID&#xff1a;CVE-2014-0160受影響的軟件及系統&#xff1a;OpenSSL 1.0.1&#xff0d;OpenSSL 1.0.1fOpenSSL 1.0.2-betaOpenSSL 1.0.2-beta1未受影響的軟件及系統&#xff1a;OpenSSL 0.9.8OpenSSL 1.0.0OpenSSL 1.0.1gOpenSSL 1.0.2-bet…