java的7個動作指令的簡單介紹

本文目錄一覽:

java中include動作和include指令的區別

include指令是編譯階段的指令,即include所包含的文件的內容是編譯的時候插入到JSP文件中,JSP引擎在判斷JSP頁面未被修改,否則視為已被修改。由於被包含的文件是在編譯時才插入的,因此如果只修改了include文件內容,而沒有對JSP修改,得到的結構將不會改變,所以直接執行已經存在的字節碼文件,而沒有重新編譯。因此對不經常變化的內容,用include指令是合適的,如果需要的內容是經常變化的,則需要動作元素jsp:include.下面將詳細區分他們之間的不同

1.include指令

include可以在JSP頁面轉換成Servlet之前,將JSP代碼插入其中。它的主要優點是功能強大,所包含的代碼可以含有總體上影響主頁面的JSP構造,比如屬性、方法的定義和文檔類型的設定。它的缺點是難於維護只要被包含的頁面發生更改,就得更改主頁面,這是因為主頁面不會自動地查看被包含的頁面是否發生更改。

語法:%@ include file=”sample.jsp” %

2.include動作

jsp:include動作是在主頁面被請求時,將次級頁面的輸出包含進來。儘管被包含的頁面的輸出中不能含有JSP,但這些頁面可以是其他資源所產生的 結果。服務器按照正常的方式對指向被包含資源的URL進行解釋,因而這個URL可以是Servlet或JSP頁面。服務器以通常的方式運行被包含的頁面, 將產生的輸出放到主頁面中,這種方式與RequestDispatcher類的include方法一致。它的優點是在被包含的頁面發生更改時,無須對主頁 面做出修改。它的缺點是所包含的是次級頁面的輸出,而非次級頁面的實際代碼,所以在被包含的頁面中不能使用任何有可能在整體上影響主頁面的JSP構造。

語法: jsp:include page=”sample.jsp” flush=”true” jsp:param name=”name” value=”value”/ /jsp:include

其中參數設置可以沒有,如果沒有參數設置,則必須採用jsp:include page=”sample.jsp” flush=”true”/形式

3. 使用include動作還是include指令?

使用include指令,如果被包含的文件發生改變,那麼,用到它的所有Jsp頁面都需要更新。

僅當include動作不能滿足要求時,我們才應該使用include指令。

有 些開發人員認為include指令生成的代碼執行起來比使用include動作的代碼更快。儘管原則上由可能的確如此,但性能上的差異很小,以致難以測 量,同時,include動作在維護上的優勢十分巨大,當兩種方法都可以使用時,include動作幾乎肯定是首選的方法。

對於文件包含,應該儘可能地使用include動作。僅在所包含的文件中定義了主頁面要用到的字段或方法,或所包含的文件設置了主頁面的響應報頭時,才應該使用include指令。

既然include指令產生難以維護的代碼,為什麼人們還要使用它呢?

因為include指令更為強大。include指令允許所包含的文件中含有影響主頁面的Jsp代碼,比如響應報頭的設置和字段、方法的定義。

例子://subpage.jsp

%! int num=0; %

//mainpage.jsp

html

body

%@ include file=”subpage.jsp” %

%= num %

/body

/html

當然使用include動作時這是不可能的,因為num變量未定義,主頁面不能成功的轉換成servlet。

java 問題

一.①1、request對象:客戶端的請求信息被封裝在request對象中,通過它才能了解到客戶的需求,然後做出響應。

2、response對象:response對象包含了響應客戶請求的有關信息。

3、session對象:session對象指的是客戶端與服務器的一次會話,從客戶連到服務器的一個WebApplication開始,直到客戶端與服務器斷開連接為止。

4、out對象:是向客戶端輸出內容常用的對象

5、page對象:page對象就是指向當前JSP頁面本身,有點象類中的this指針。

6、application對象:application對象實現了用戶間數據的共享,可存放全局變量。它開始於服務器的啟動,直到服務器的關閉,在此期間,此對象將一直存在;這樣在用戶的前後連接或不同用戶之間的連接中,可以對此對象的同一屬性進行操作;在任何地方對此對象屬性的操作,都將影響到其他用戶對此的訪問。服務器的啟動和關閉決定了application對象的生命。

7、exception對象:exception對象是一個例外對象,當一個頁面在運行過程中發生了例外,就產生這個對象。如果一個JSP頁面要應用此對象,就必須把isErrorPage設為true,否則無法編譯。

8、pageContext對象:pageContext對象提供了對JSP頁面內所有的對象及名字空間的訪問,也就是說他可以訪問到本頁所在的SESSION,也可以取本頁面所在的application的某一屬性值,他相當於頁面中所有功能的集大成者,它的本 類名也叫pageContext。

9、config對象:config對象是在一個Servlet初始化時,JSP引擎向它傳遞信息用的,此信息包括Servlet初始化時所要用到的參數(通過屬性名和屬性值構成)以及服務器的有關信息(通過傳遞一個ServletContext對象)。

1、request對象:客戶端的請求信息被封裝在request對象中,通過它才能了解到客戶的需求,然後做出響應。

2、response對象:response對象包含了響應客戶請求的有關信息。

3、session對象:session對象指的是客戶端與服務器的一次會話,從客戶連到服務器的一個WebApplication開始,直到客戶端與服務器斷開連接為止。

4、out對象:是向客戶端輸出內容常用的對象

5、page對象:page對象就是指向當前JSP頁面本身,有點象類中的this指針。

6、application對象:application對象實現了用戶間數據的共享,可存放全局變量。它開始於服務器的啟動,直到服務器的關閉,在此期間,此對象將一直存在;這樣在用戶的前後連接或不同用戶之間的連接中,可以對此對象的同一屬性進行操作;在任何地方對此對象屬性的操作,都將影響到其他用戶對此的訪問。服務器的啟動和關閉決定了application對象的生命。

7、exception對象:exception對象是一個例外對象,當一個頁面在運行過程中發生了例外,就產生這個對象。如果一個JSP頁面要應用此對象,就必須把isErrorPage設為true,否則無法編譯。

8、pageContext對象:pageContext對象提供了對JSP頁面內所有的對象及名字空間的訪問,也就是說他可以訪問到本頁所在的SESSION,也可以取本頁面所在的application的某一屬性值,他相當於頁面中所有功能的集大成者,它的本 類名也叫pageContext。

9、config對象:config對象是在一個Servlet初始化時,JSP引擎向它傳遞信息用的,此信息包括Servlet初始化時所要用到的參數(通過屬性名和屬性值構成)以及服務器的有關信息(通過傳遞一個ServletContext對象)。

② JSP共有以下6種基本動作

jsp:include:在頁面被請求的時候引入一個文件。

jsp:useBean:尋找或者實例化一個JavaBean。

jsp:setProperty:設置JavaBean的屬性。

jsp:getProperty:輸出某個JavaBean的屬性。

jsp:forward:把請求轉到一個新的頁面。

jsp:plugin:根據瀏覽器類型為Java插件生成OBJECT或EMBED標記

③ 前者是include動作

後者是 include指令

④1.forward跳轉:jsp:forward page=”跳轉頁面地址” /2.response跳轉:response.sendRedirect(“跳轉頁面地址”);兩種跳轉的區別如下:1.forward跳轉:a.服務器端跳轉,地址欄不改變;b.執行到跳轉語句後馬上無條件跳轉,之後的代碼不再執行(跳轉之前一定要釋放全部資源);c.request設置的屬性在跳轉後的頁面仍可以使用;d.使用jsp:param name=”參數名” value=”參數值” /傳遞參數。2.response跳轉:a.客戶端跳轉,地址欄改變;b.所有代碼執行完畢後跳轉;c.跳轉後的頁面不能使用上一個頁面的request屬性;d.使用地址重寫傳遞參數(response.sendRedirect(“URL?參數名=參數值”))。

二。① 只有一個對象

第一次請求的時候被初始化,只一遍

初始化後先調用init方法,只一遍

每個請求,調用一遍service-受保護的service-doGet/doPost。 以多線程的方式運行。不要在servlet中設計成員變量。

卸載前調用destroy方法

② 前者僅是容器中控制權的轉向,在客戶端瀏覽器地址欄中不會顯示出轉向後的地址;後者則是完全的跳轉,瀏覽器將會得到跳轉的地址,並重新發送請求鏈接。這樣,從瀏覽器的地址欄中可以看到跳轉後的鏈接地址。所以,前者更加高效,在前者可以滿足需要時,盡量使用forward()方法,並且,這樣也有助於隱藏實際的鏈接。在有些情況下,比如,需要跳轉到一個其它服務器上的資源,則必須使用sendRedirect()方法。

③ Servlet類 沒有簡單與不簡單,分常用不常用:、javax.servlet.GenericServlet類(協議無關版本) 很多類

JAVA指令大全

指令碼

助記符

說明

0x00

nop

什麼都不做

0x01

aconst_null

將null推送至棧頂

0x02

iconst_m1

將int型-1推送至棧頂

0x03

iconst_0

將int型0推送至棧頂

0x04

iconst_1

將int型1推送至棧頂

0x05

iconst_2

將int型2推送至棧頂

0x06

iconst_3

將int型3推送至棧頂

0x07

iconst_4

將int型4推送至棧頂

0x08

iconst_5

將int型5推送至棧頂

0x09

lconst_0

將long型0推送至棧頂

0x0a

lconst_1

將long型1推送至棧頂

0x0b

fconst_0

將float型0推送至棧頂

0x0c

fconst_1

將float型1推送至棧頂

0x0d

fconst_2

將float型2推送至棧頂

0x0e

dconst_0

將double型0推送至棧頂

0x0f

dconst_1

將double型1推送至棧頂

0x10

bipush

將單字節的常量值(-128~127)推送至棧頂

0x11

sipush

將一個短整型常量值(-32768~32767)推送至棧頂

0x12

ldc

將int, float或String型常量值從常量池中推送至棧頂

0x13

ldc_w

將int, float或String型常量值從常量池中推送至棧頂(寬索引)

0x14

ldc2_w

將long或double型常量值從常量池中推送至棧頂(寬索引)

0x15

iload

將指定的int型本地變量推送至棧頂

0x16

lload

將指定的long型本地變量推送至棧頂

0x17

fload

將指定的float型本地變量推送至棧頂

0x18

dload

將指定的double型本地變量推送至棧頂

0x19

aload

將指定的引用類型本地變量推送至棧頂

0x1a

iload_0

將第一個int型本地變量推送至棧頂

0x1b

iload_1

將第二個int型本地變量推送至棧頂

0x1c

iload_2

將第三個int型本地變量推送至棧頂

0x1d

iload_3

將第四個int型本地變量推送至棧頂

0x1e

lload_0

將第一個long型本地變量推送至棧頂

0x1f

lload_1

將第二個long型本地變量推送至棧頂

0x20

lload_2

將第三個long型本地變量推送至棧頂

0x21

lload_3

將第四個long型本地變量推送至棧頂

0x22

fload_0

將第一個float型本地變量推送至棧頂

0x23

fload_1

將第二個float型本地變量推送至棧頂

0x24

fload_2

將第三個float型本地變量推送至棧頂

0x25

fload_3

將第四個float型本地變量推送至棧頂

0x26

dload_0

將第一個double型本地變量推送至棧頂

0x27

dload_1

將第二個double型本地變量推送至棧頂

0x28

dload_2

將第三個double型本地變量推送至棧頂

0x29

dload_3

將第四個double型本地變量推送至棧頂

0x2a

aload_0

將第一個引用類型本地變量推送至棧頂

0x2b

aload_1

將第二個引用類型本地變量推送至棧頂

0x2c

aload_2

將第三個引用類型本地變量推送至棧頂

0x2d

aload_3

將第四個引用類型本地變量推送至棧頂

0x2e

iaload

將int型數組指定索引的值推送至棧頂

0x2f

laload

將long型數組指定索引的值推送至棧頂

0x30

faload

將float型數組指定索引的值推送至棧頂

0x31

daload

將double型數組指定索引的值推送至棧頂

0x32

aaload

將引用型數組指定索引的值推送至棧頂

0x33

baload

將boolean或byte型數組指定索引的值推送至棧頂

0x34

caload

將char型數組指定索引的值推送至棧頂

0x35

saload

將short型數組指定索引的值推送至棧頂

0x36

istore

將棧頂int型數值存入指定本地變量

0x37

lstore

將棧頂long型數值存入指定本地變量

0x38

fstore

將棧頂float型數值存入指定本地變量

0x39

dstore

將棧頂double型數值存入指定本地變量

0x3a

astore

將棧頂引用型數值存入指定本地變量

0x3b

istore_0

將棧頂int型數值存入第一個本地變量

0x3c

istore_1

將棧頂int型數值存入第二個本地變量

0x3d

istore_2

將棧頂int型數值存入第三個本地變量

0x3e

istore_3

將棧頂int型數值存入第四個本地變量

0x3f

lstore_0

將棧頂long型數值存入第一個本地變量

0x40

lstore_1

將棧頂long型數值存入第二個本地變量

0x41

lstore_2

將棧頂long型數值存入第三個本地變量

0x42

lstore_3

將棧頂long型數值存入第四個本地變量

0x43

fstore_0

將棧頂float型數值存入第一個本地變量

0x44

fstore_1

將棧頂float型數值存入第二個本地變量

0x45

fstore_2

將棧頂float型數值存入第三個本地變量

0x46

fstore_3

將棧頂float型數值存入第四個本地變量

0x47

dstore_0

將棧頂double型數值存入第一個本地變量

0x48

dstore_1

將棧頂double型數值存入第二個本地變量

0x49

dstore_2

將棧頂double型數值存入第三個本地變量

0x4a

dstore_3

將棧頂double型數值存入第四個本地變量

0x4b

astore_0

將棧頂引用型數值存入第一個本地變量

0x4c

astore_1

將棧頂引用型數值存入第二個本地變量

0x4d

astore_2

將棧頂引用型數值存入第三個本地變量

0x4e

astore_3

將棧頂引用型數值存入第四個本地變量

0x4f

iastore

將棧頂int型數值存入指定數組的指定索引位置

0x50

lastore

將棧頂long型數值存入指定數組的指定索引位置

0x51

fastore

將棧頂float型數值存入指定數組的指定索引位置

0x52

dastore

將棧頂double型數值存入指定數組的指定索引位置

0x53

aastore

將棧頂引用型數值存入指定數組的指定索引位置

0x54

bastore

將棧頂boolean或byte型數值存入指定數組的指定索引位置

0x55

castore

將棧頂char型數值存入指定數組的指定索引位置

0x56

sastore

將棧頂short型數值存入指定數組的指定索引位置

0x57

pop

將棧頂數值彈出 (數值不能是long或double類型的)

0x58

pop2

將棧頂的一個(long或double類型的)或兩個數值彈出(其它)

0x59

dup

複製棧頂數值並將複製值壓入棧頂

0x5a

dup_x1

複製棧頂數值並將兩個複製值壓入棧頂

0x5b

dup_x2

複製棧頂數值並將三個(或兩個)複製值壓入棧頂

0x5c

dup2

複製棧頂一個(long或double類型的)或兩個(其它)數值並將複製值壓入棧頂

0x5d

dup2_x1

待補充

0x5e

dup2_x2

待補充

0x5f

swap

將棧最頂端的兩個數值互換(數值不能是long或double類型的)

0x60

iadd

將棧頂兩int型數值相加並將結果壓入棧頂

0x61

ladd

將棧頂兩long型數值相加並將結果壓入棧頂

0x62

fadd

將棧頂兩float型數值相加並將結果壓入棧頂

0x63

dadd

將棧頂兩double型數值相加並將結果壓入棧頂

0x64

isub

將棧頂兩int型數值相減並將結果壓入棧頂

0x65

lsub

將棧頂兩long型數值相減並將結果壓入棧頂

0x66

fsub

將棧頂兩float型數值相減並將結果壓入棧頂

0x67

dsub

將棧頂兩double型數值相減並將結果壓入棧頂

0x68

imul

將棧頂兩int型數值相乘並將結果壓入棧頂

0x69

lmul

將棧頂兩long型數值相乘並將結果壓入棧頂

0x6a

fmul

將棧頂兩float型數值相乘並將結果壓入棧頂

0x6b

dmul

將棧頂兩double型數值相乘並將結果壓入棧頂

0x6c

idiv

將棧頂兩int型數值相除並將結果壓入棧頂

0x6d

ldiv

將棧頂兩long型數值相除並將結果壓入棧頂

0x6e

fdiv

將棧頂兩float型數值相除並將結果壓入棧頂

0x6f

ddiv

將棧頂兩double型數值相除並將結果壓入棧頂

0x70

irem

將棧頂兩int型數值作取模運算並將結果壓入棧頂

0x71

lrem

將棧頂兩long型數值作取模運算並將結果壓入棧頂

0x72

frem

將棧頂兩float型數值作取模運算並將結果壓入棧頂

0x73

drem

將棧頂兩double型數值作取模運算並將結果壓入棧頂

0x74

ineg

將棧頂int型數值取負並將結果壓入棧頂

0x75

lneg

將棧頂long型數值取負並將結果壓入棧頂

0x76

fneg

將棧頂float型數值取負並將結果壓入棧頂

0x77

dneg

將棧頂double型數值取負並將結果壓入棧頂

0x78

ishl

將int型數值左移位指定位數並將結果壓入棧頂

0x79

lshl

將long型數值左移位指定位數並將結果壓入棧頂

0x7a

ishr

將int型數值右(符號)移位指定位數並將結果壓入棧頂

0x7b

lshr

將long型數值右(符號)移位指定位數並將結果壓入棧頂

0x7c

iushr

將int型數值右(無符號)移位指定位數並將結果壓入棧頂

0x7d

lushr

將long型數值右(無符號)移位指定位數並將結果壓入棧頂

0x7e

iand

將棧頂兩int型數值作“按位與”並將結果壓入棧頂

0x7f

land

將棧頂兩long型數值作“按位與”並將結果壓入棧頂

0x80

ior

將棧頂兩int型數值作“按位或”並將結果壓入棧頂

0x81

lor

將棧頂兩long型數值作“按位或”並將結果壓入棧頂

0x82

ixor

將棧頂兩int型數值作“按位異或”並將結果壓入棧頂

0x83

lxor

將棧頂兩long型數值作“按位異或”並將結果壓入棧頂

0x84

iinc

將指定int型變量增加指定值(i++, i–, i+=2)

0x85

i2l

將棧頂int型數值強制轉換成long型數值並將結果壓入棧頂

0x86

i2f

將棧頂int型數值強制轉換成float型數值並將結果壓入棧頂

0x87

i2d

將棧頂int型數值強制轉換成double型數值並將結果壓入棧頂

0x88

l2i

將棧頂long型數值強制轉換成int型數值並將結果壓入棧頂

0x89

l2f

將棧頂long型數值強制轉換成float型數值並將結果壓入棧頂

0x8a

l2d

將棧頂long型數值強制轉換成double型數值並將結果壓入棧頂

0x8b

f2i

將棧頂float型數值強制轉換成int型數值並將結果壓入棧頂

0x8c

f2l

將棧頂float型數值強制轉換成long型數值並將結果壓入棧頂

0x8d

f2d

將棧頂float型數值強制轉換成double型數值並將結果壓入棧頂

0x8e

d2i

將棧頂double型數值強制轉換成int型數值並將結果壓入棧頂

0x8f

d2l

將棧頂double型數值強制轉換成long型數值並將結果壓入棧頂

0x90

d2f

將棧頂double型數值強制轉換成float型數值並將結果壓入棧頂

0x91

i2b

將棧頂int型數值強制轉換成byte型數值並將結果壓入棧頂

0x92

i2c

將棧頂int型數值強制轉換成char型數值並將結果壓入棧頂

0x93

i2s

將棧頂int型數值強制轉換成short型數值並將結果壓入棧頂

0x94

lcmp

比較棧頂兩long型數值大小,並將結果(1,0,-1)壓入棧頂

0x95

fcmpl

比較棧頂兩float型數值大小,並將結果(1,0,-1)壓入棧頂;當其中一個數值為NaN時,將-1壓入棧頂

0x96

fcmpg

比較棧頂兩float型數值大小,並將結果(1,0,-1)壓入棧頂;當其中一個數值為NaN時,將1壓入棧頂

0x97

dcmpl

比較棧頂兩double型數值大小,並將結果(1,0,-1)壓入棧頂;當其中一個數值為NaN時,將-1壓入棧頂

0x98

dcmpg

比較棧頂兩double型數值大小,並將結果(1,0,-1)壓入棧頂;當其中一個數值為NaN時,將1壓入棧頂

0x99

ifeq

當棧頂int型數值等於0時跳轉

0x9a

ifne

當棧頂int型數值不等於0時跳轉

0x9b

iflt

當棧頂int型數值小於0時跳轉

0x9c

ifge

當棧頂int型數值大於等於0時跳轉

0x9d

ifgt

當棧頂int型數值大於0時跳轉

0x9e

ifle

當棧頂int型數值小於等於0時跳轉

0x9f

if_icmpeq

比較棧頂兩int型數值大小,當結果等於0時跳轉

0xa0

if_icmpne

比較棧頂兩int型數值大小,當結果不等於0時跳轉

0xa1

if_icmplt

比較棧頂兩int型數值大小,當結果小於0時跳轉

0xa2

if_icmpge

比較棧頂兩int型數值大小,當結果大於等於0時跳轉

0xa3

if_icmpgt

比較棧頂兩int型數值大小,當結果大於0時跳轉

0xa4

if_icmple

比較棧頂兩int型數值大小,當結果小於等於0時跳轉

0xa5

if_acmpeq

比較棧頂兩引用型數值,當結果相等時跳轉

0xa6

if_acmpne

比較棧頂兩引用型數值,當結果不相等時跳轉

0xa7

goto

無條件跳轉

0xa8

jsr

跳轉至指定16位offset位置,並將jsr下一條指令地址壓入棧頂

0xa9

ret

返回至本地變量指定的index的指令位置(一般與jsr, jsr_w聯合使用)

0xaa

tableswitch

用於switch條件跳轉,case值連續(可變長度指令)

0xab

lookupswitch

用於switch條件跳轉,case值不連續(可變長度指令)

0xac

ireturn

從當前方法返回int

0xad

lreturn

從當前方法返回long

0xae

freturn

從當前方法返回float

0xaf

dreturn

從當前方法返回double

0xb0

areturn

從當前方法返回對象引用

0xb1

return

從當前方法返回void

0xb2

getstatic

獲取指定類的靜態域,並將其值壓入棧頂

0xb3

putstatic

為指定的類的靜態域賦值

0xb4

getfield

獲取指定類的實例域,並將其值壓入棧頂

0xb5

putfield

為指定的類的實例域賦值

0xb6

invokevirtual

調用實例方法

0xb7

invokespecial

調用超類構造方法,實例初始化方法,私有方法

0xb8

invokestatic

調用靜態方法

0xb9

invokeinterface

調用接口方法

0xba

0xbb

new

創建一個對象,並將其引用值壓入棧頂

0xbc

newarray

創建一個指定原始類型(如int, float, char…)的數組,並將其引用值壓入棧頂

0xbd

anewarray

創建一個引用型(如類,接口,數組)的數組,並將其引用值壓入棧頂

0xbe

arraylength

獲得數組的長度值並壓入棧頂

0xbf

athrow

將棧頂的異常拋出

0xc0

checkcast

檢驗類型轉換,檢驗未通過將拋出ClassCastException

0xc1

instanceof

檢驗對象是否是指定的類的實例,如果是將1壓入棧頂,否則將0壓入棧頂

0xc2

monitorenter

獲得對象的鎖,用於同步方法或同步塊

0xc3

monitorexit

釋放對象的鎖,用於同步方法或同步塊

0xc4

wide

待補充

0xc5

multianewarray

創建指定類型和指定維度的多維數組(執行該指令時,操作棧中必須包含各維度的長度值),並將其引用值壓入棧頂

0xc6

ifnull

為null時跳轉

0xc7

ifnonnull

不為null時跳轉

0xc8

goto_w

無條件跳轉(寬索引)

0xc9

jsr_w

跳轉至指定32位offset位置,並將jsr_w下一條指令地址壓入棧頂

我的世界java指令大全

以下是Minecraft通用指令:

clear:清除玩家的物品

clone:複製或移動某區域內的方塊

deop:撤銷玩家的管理員身份

difficulty:調整遊戲難度

effect:給予實體狀態效果

enchant:對實體手持物品進行附魔

execute:在改變執行者、執行位置和角度,添加限制條件,並儲存其輸出值的情況下執行另一條命令

experience/xp:更改玩家的經驗和等級

fill:在指定區域填充指定方塊

function:執行函數

gamemode:修改遊戲模式

gamerule:查看和修改遊戲規則

give:給予玩家指定物品

help/?:列出可用指令、查看特定指令用法

kick:將玩家踢出服務器

kill:移除或殺死實體

list:列出在服務器中的玩家

locate:定位特定結構

me:以“* 執行者名稱+動作”的格式發送一條旁白信息

op:給予玩家管理員身份

particle:顯示粒子

playsound:播放音效

reload:重新加載數據包

say:通過聊天框向玩家發送消息

schedule:在經過指定的時間後執行函數

scoreboard:管理和查看記分板的目標、玩家和隊伍

setblock:放置指定方塊

setworldspawn:設置世界出生點

spawnpoint:設置特定玩家的重生點

spreadplayers:散步玩家

stopsound:停止音效

summon:生成實體

tag:管理實體的記分板標籤

tell/msg/w:通過聊天框向玩家發送私聊信息

tellraw:向玩家發送JSON文本消息

time:設置時間

title:設置和顯示標題

teleport/tp:傳送實體

weather:設置天氣

whitelist:管理服務器中的白名單

以下是java版特有指令:

advancement:使特定玩家達成進度

attribute:管理實體屬性

ban:將玩家列入黑名單

ban-ip:將一個ip地址列入黑名單

banlist:顯示黑名單

bossbar:管理boss欄

data:查看或修改方塊或實體的nbt數據

datapack:管理數據包

debug:開始或結束調試會話

defaultgamemode:設置默認遊戲模式

forceload:強制加載區塊

item:修改方塊或實體物品欄內的物品

jfr:使用Java FlightRecorder分析數據和某些自定義事件

locatebiome:定位生物群系

loot:將指定的戰利品放入物品欄或世界

pardon:將玩家移出黑名單

pardon-ip:將一個ip地址移出黑名單

perf:記錄並保存性能分析數據

placefeature[新增:JE 1.18.2]:放置一個地物,目前不可用

publish:向局域網開放單人遊戲世界

recipe:給予或剝奪玩家配方

save-all:將服務器保存至硬盤

save-off:禁用服務器的自動保存

save-on:啟用服務器的自動保存

seed:輸出世界種子

setidletimeout:設置踢出空閑不動玩家的時間

spectate:使處於旁觀者模式的玩家進入另一個實體的視角

stop:停止服務端

team:管理隊伍

teammsg:給使用命令的實體所在的隊伍全體成員發送消息

trigger:修改一個準則為“觸發器”的記分板目標

worldborder:控制世界邊界

求我的世界java指令全套

以下是Minecraft通用指令:

clear:清除玩家的物品

clone:複製或移動某區域內的方塊

deop:撤銷玩家的管理員身份

difficulty:調整遊戲難度

effect:給予實體狀態效果

enchant:對實體手持物品進行附魔

execute:在改變執行者、執行位置和角度,添加限制條件,並儲存其輸出值的情況下執行另一條命令

experience/xp:更改玩家的經驗和等級

fill:在指定區域填充指定方塊

function:執行函數

gamemode:修改遊戲模式

gamerule:查看和修改遊戲規則

give:給予玩家指定物品

help/?:列出可用指令、查看特定指令用法

kick:將玩家踢出服務器

kill:移除或殺死實體

list:列出在服務器中的玩家

locate:定位特定結構

me:以“* 執行者名稱+動作”的格式發送一條旁白信息

op:給予玩家管理員身份

particle:顯示粒子

playsound:播放音效

reload:重新加載數據包

say:通過聊天框向玩家發送消息

schedule:在經過指定的時間後執行函數

scoreboard:管理和查看記分板的目標、玩家和隊伍

setblock:放置指定方塊

setworldspawn:設置世界出生點

spawnpoint:設置特定玩家的重生點

spreadplayers:散步玩家

stopsound:停止音效

summon:生成實體

tag:管理實體的記分板標籤

tell/msg/w:通過聊天框向玩家發送私聊信息

tellraw:向玩家發送JSON文本消息

time:設置時間

title:設置和顯示標題

teleport/tp:傳送實體

weather:設置天氣

whitelist:管理服務器中的白名單

以下是java版特有指令:

advancement:使特定玩家達成進度

attribute:管理實體屬性

ban:將玩家列入黑名單

ban-ip:將一個ip地址列入黑名單

banlist:顯示黑名單

bossbar:管理boss欄

data:查看或修改方塊或實體的nbt數據

datapack:管理數據包

debug:開始或結束調試會話

defaultgamemode:設置默認遊戲模式

forceload:強制加載區塊

item:修改方塊或實體物品欄內的物品

jfr:使用Java FlightRecorder分析數據和某些自定義事件

locatebiome:定位生物群系

loot:將指定的戰利品放入物品欄或世界

pardon:將玩家移出黑名單

pardon-ip:將一個ip地址移出黑名單

perf:記錄並保存性能分析數據

placefeature[新增:JE 1.18.2]:放置一個地物,目前不可用

publish:向局域網開放單人遊戲世界

recipe:給予或剝奪玩家配方

save-all:將服務器保存至硬盤

save-off:禁用服務器的自動保存

save-on:啟用服務器的自動保存

seed:輸出世界種子

setidletimeout:設置踢出空閑不動玩家的時間

spectate:使處於旁觀者模式的玩家進入另一個實體的視角

stop:停止服務端

team:管理隊伍

teammsg:給使用命令的實體所在的隊伍全體成員發送消息

trigger:修改一個準則為“觸發器”的記分板目標

worldborder:控制世界邊界

jsp的常用指令有哪些

Jsp包含三個編譯指令和七個動作指令。

三個編譯指令為:page、include、taglib。

七個動作指令為:jsp:forward、jsp:param、jsp:include、jsp:plugin、jsp:useBean、jsp:setProperty、jsp:getProperty。

一、編譯指令

1、 page指令

a. 通常位於jsp頁面的頂端,同一個頁面可以有多個page指令。語法格式如下:

〈% @page

[language=”Java”]

[extends=”package.class”]

[import= “package. class I package. *},…”]

[session=”true I false”]

[buffer=”none I 8kb I size kb” 1

[autoFlush=”true I false”]

[isThreadSafe=”true I false”]

[info=”text”]

[errorPage=”relativeURL”]

[contentType=”mimeType[ ;charset=characterSet]” I”text/html;charset= “808859-1”]

[isErrorPage=” true I false”]

%〉

1)language屬性,一般情況就是java,代表jsp頁面使用的腳本語言。

2)Extends屬性,確定 JSP 程序編譯時所產生的 Java 類,需要繼承的父類,或者需要實現的接口的全限定類名。

1.import屬性,用來導入包,下面幾個包是默認自動導入的,不需要顯式導入。默認導入的包有:

java.lang.*

javax.servlet.*

javax.servlet.jsp.*

javax.servlet.http.*

2.Session屬性,設定這個 JSP 頁面是否需要 HTIP session 。

3.buffer屬性,指定輸出緩衝區的大小。輸出緩衝區的 JSP 內部對象: out 用於緩存 JSP頁面對客戶瀏覽器的輸出,默認值為 8kb,可以設置為 none ,也可以設置為其他值,單位為kb

4.autoFlush屬性,當輸出緩衝區即將溢出時,是否需要強制輸出緩衝區的內容。設置為true 時為正常輸出;如果設置為 false ,會在 buffer 溢出時產生一個異常。

5.Info屬性,設置該 JSP 程序的信息,也可以看做其說明,可以通過 Servlet. getServletInfo()方法獲取該值。如果在 JSP 頁面中,可直接調用 getServletInfoO方法獲取該值,因為 JSP 頁面的實質就是 Servlet 。

errorPage屬性,指定錯誤處理頁面。如果本程序產生了異常或者錯誤,而該 JSP 頁面沒有對應的處理代碼,則會自動調用該指令所指定的 JSP 頁面。使用 JSP 頁面時,可以不處理異常,即使是 checked 異常。(重定向到對應的錯誤處理頁面,但是URL還是原來的URl,並不發生變化)如果這個頁面不存在這個屬性,那麼一旦代碼出現問題,就會在開發環境和IE瀏覽器上提示錯誤。可見這條屬性控制異常處理的效果在表現形式上要好的多。

6.IsErrorPage屬性,設置本 JSP 頁面是否為錯誤處理程序。如果該頁面本身己是錯誤處理頁面,則無須使用 errorPage 屬性。

7.ContentType屬性,用於設定生成網頁的文件格式和編碼方式,即 MIME 類型和頁面字符集類型,默認的 MIME 類型是 text/html; 默認的字符集為 ISO-8859-1 。

2、 include指令

使用 include 指令,可以將一個外部文件嵌入到當前 JSP 文件中,同時解析這個頁面中的 JSP 語句(如果有的話)。這是個靜態的 include 語旬,不會檢查所包含 JSP 頁面的變化。

include 既可以包含靜態的文本,也可以包含動態的 JSP 頁面。靜態的編譯指令include ,是將被包含的頁面加入進來,生成一個完整的頁面。

include 編譯指令的語法:

〈% @include file=”relativeURLSpec” %〉

如果被嵌入的文件經常需要改變,建議使用jsp:include操作指令,因為它是動態的 include 語句。

包含include指令的jsp頁面在部署後,經過訪問編譯生成java文件,在tomcat的 work\Catalina\localhost\project\org\apache\jsp目錄下會生成對應的java文件,這些文件與jsp的名字相同,他包含了編譯後的代碼,甚至include包含的另外一個jsp的代碼也被相應的加入了進來。

二、 動作指令

1、 forward指令:forward 指令用於將頁面響應控制轉發給另外的頁面。既可以轉發給靜態的 HTML頁面,也可以轉發到動態的 JSP 頁面,或者轉發到容器中的 Servlet。

JSP 的 forward 指令的格式如下:

對於 JSP 1. 0 ,使用如下語法:

jsp:forward page=”{relativeURL |%=expression%}” /

可使用如下語法:

jsp:forward page=”{relativeURL |%=expression%}”

{jsp:param…/}

/jsp:forward

第二種語法用於在轉發時增加額外的請求參數。增加的請求參數的值可以通過HttpServletRequest 類的 getParameter方法獲取。

2、 include指令,它是一個動態的指令,可以用於導入某個頁面。它的導入會每次檢查被導入頁面的改變。下面是include指令的使用格式:

jsp:include page=”{relativeURL |%=expression%}” flush=”true” /

或者:

jsp:include page=”{relativeURL |%=expression%}” flush=”true”

jsp:param name=”paramName” value=”paramValue”/

/jsp:include

flush 屬性用於指定輸出緩存是否轉移到被導入文件中。如果指定為劇。則包含在被導入文件中;如果指定為false,則包含在原文件中。對於JSP 1.1以下的舊版本,只能設置為false。

include和jsp:include分別為靜態導入和動態導入。他們的的區別:靜態導入是將被導入頁面的代碼完全插入,兩個頁面生成一個整體的 Servlet; 而動態導入則在 Servlet 中使用動態導入,從而將頁面引入。

3、 useBean、setProperty和getProperty指令

這三個指令都是與JavaBean相關的指令,其中useBean用於在jsp頁面初始化一個java實例,setProperty用於修改JavaBean實例的屬性,getProperty用於獲取JavaBean實例的屬性。

useBean的語法格式:

jsp:useBean id=”” class=”” scope=”page | request |session | application”

Id是JavaBean的實例名,class屬性確定JavaBean的實現類。Scope屬性確定生存範圍【頁面、請求、會話、應用】

setProperty的語法格式:

jsp:setProperty name=”” property=”” value=”” /

Name屬性確定需要設定

4、 plugin指令

plugin 指令主要用於下載服務器端的 JavaBean 或 Applet 到客戶端執行。由於程序在客戶端執行,因此客戶端必須安裝虛擬機。

plugin 的語法格式如下:

jsp:plugin type=”bean | applet”

code=”classFileName”

codebase=”classFileDiretoryName”

[name=” instanceName”]

[archive=”URLtoArchive”]

[align= “bottom I top I middle I left I right”]

[heigh=”displayPixels”]

[width=”displayPixels”]

[hspace=”leftRightPixels”]

[vspace=”topBottomPiexels”]

[jreversion=JREVersionNumber|1.2″]

[nspluginurl=”URLToPlugin”]

[iepluginurl=”URLToPlugin”]

[jsp:parames

[jsp:param name=”parameterName” value=”parameterValue” /]

/jsp:params]

[jsp:fallbacktext message for user that can no see the plugin

/jsp:fallback ]

/jsp:plugin

這些屬性的說明如下:

Type: 指定被執行的java程序的類型,是一個bean還是一個applet

Code: 指定被執行的文件名,該屬性值必須以“.class”擴展名結尾

Codebase: 指定被執行的文件目錄。

Name: 給該程序起一個名字用來標識該程序。

Archive: 指向一些要預先載入的將要使用到的類的路徑。

Hspace,Vspace: 顯示左右上下的留白。

jreversion: 能正確運行改程序必須的JRE版本。

Nsplugin,ieplugin: Netscape Navigator, Internet Exploer 下載運行所需JRE 的地址。

jsp:fallback指令:當不能正確顯示該applet時,代替顯示的提示信息。

5、 param指令

param指令用於設置參數值,這個指令本身不能單獨使用,因為單獨使用沒有意義。它可以和以下幾個指令合起來使用

jsp:include

jsp:forward

jsp:plugin

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/243976.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 12:59
下一篇 2024-12-12 12:59

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • Python簡單數學計算

    本文將從多個方面介紹Python的簡單數學計算,包括基礎運算符、函數、庫以及實際應用場景。 一、基礎運算符 Python提供了基礎的算術運算符,包括加(+)、減(-)、乘(*)、除…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29

發表回復

登錄後才能評論