JSP
jsp(javascript page)服務端腳本語言,用於寫動態網頁。就是可以在html中寫java代碼。
執行過程:
第一次訪問:jsp -> java(servlet文件) -> .class
第二次訪問:直接訪問.class文件
tips:所以第一次訪問網頁都比較慢,後面後好點了,如果服務端代碼修改時,服務器會重新編譯。
架構
CS:Client Server
BS:Browser Server
內容較多,可查看:cs和bs架構的區別
tomcat服務器
目錄結構:
bin:可執行文件都放在這(startup.bat開啓服務器 shutdown.bat關閉服務器)
只有開啓了服務器才能夠訪問部署在tomcat的網頁
conf:(configure)配置文件都放在這
lib:tomcat依賴的jar文件
log:日誌文件
temp:臨時文件
webapps:可執行的項目(一般我們的項目都放在這裏面)
work:存放由jsp翻譯成java以及編譯後的class文件
常見狀態碼
200:一切正常
404:資源不存在
403:權限不足
3開頭:重定向
5開頭:服務器內部出錯(一般是代碼寫錯)
虛擬路徑
先來看看conf/server.xml文件中常用的一些配置吧
很多人不知道去哪裏看自己設置的端口號或者想要自己重新設置端口號,這裏就可以解決你的問題!
那我們再來看看一張圖:
所以我們在輸入url的時候需要localhost:端口號/文件夾/文件名
<welcome-file-list>
服務器一開始是怎麼知道哪些文件是默認文件的呢?
原來在WEB-INF/web.xml中設置了 默認的 初始頁面
<welcome-file-list>
<!--你也可以添加一些默認的初始頁面-->
<welcome-file>index.jsp</welcome-file>
<welcome-file-list>
當你輸入localhost:端口號時,服務器會先在這裏找文件,如果沒有找到就404
JSP中寫java代碼
<%@ %>、<% %>,<%= %>,<%! %>跟<%-- --%>標籤
<%@ page %>
稱爲page 指令
其屬性:
language: 指定jsp頁面使用的腳本語言
import: 導入類
pageEncoding: 指定jsp文件本身的編碼
contentType: 指定瀏覽器解析jsp的編碼
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<% %>
此標籤內可編寫java代碼以及定義局部變量
<% // 這裏定義局部變量,常規java代碼
init(9);
for(int i = 0; i < 3; i++){
// 換行用<br/>
out.print(i*i + "<br/>");
%>
<%= %>
稱爲輸出表達式 功能與out.print()等價
<%=
// 可以在這裏寫一些簡單的表達式
"你好啊" + name
%>
<%! %>
一般在此定義全局變量,方法
<%!
public String name;
public void init(int n){
name = "codekiang" + n;
}
%>
注意:out.print()以及輸出表達式可以解析html標籤
<%-- --%>
註釋標籤,跟其他語言的註釋功能一樣
<%--
<%@ page %> => page 指令
--%>
到了這裏,一些代碼你就可以得心應手的寫出來啦。那麼如果遇到需要在java代碼中寫html標籤那該怎麼辦呢?
我們可以這樣做:
<% // 這裏定義局部變量,常規java代碼
for(int i = 0; i < 3; i++){
out.print("啊杭好帥")
%>
<h2>CodeKiang好帥</h2>
<% }%>
這是我們可以把java代碼用<% %>
分開來,中間寫html標籤。是不是覺得很神奇啊。
總結一下:<%= %>以及<%! %>中的%跟!,=之間不要有空格!!