jsp本質上就是一個servlet,只是tomcat會將其翻譯成servlet,servlet本質上是一個類,那么jsp也是一個類。jsp中各種標簽都會被tomcat翻譯成各種基本的java代碼
如果一個jsp頁面中定義了變量,在另外一個地方可以直接獲取,例如
<% String name = "zhangsan"; %> <%= name %>
但是大家請注意了,現在的開發都不在jsp中寫java代碼,以上是java代碼,現在就是需要用到jsp的標簽。什么叫jsp的標簽呢?下面舉例子
1.$標簽(el標簽)
<% pageContext.setAttribute("name", "lisi"); %> ${name }
輸出結果: lisi
在jsp中想直接用el($)標簽需要把變量放到四大域中,這時候才能直接獲取,這是el標簽的規則。 上面那段java代碼只是把變量放到域中,然后就直接可以獲取。四大域也就是
page , request , session , application。page域只能在本jsp頁面中獲取,request域可以在一次請求中得到,如果用的是請求轉發就行,重定向就不能用request中。session表示一次會話,
一次會話就是打開一個瀏覽器,就會創建一個session。application就是放在服務器上面的域,只要服務器開着,這個域任何地方都能獲取。