work/Catalina/localhost/_/org/apache/jsp/| 屬性 | 說明 |
|---|---|
| language | 默認腳本語言 |
| extends | 繼承的 Java 類 |
| import | 導入類包 |
| pageEncoding | 頁面編碼 |
| contentType | MIME 類型與字符編碼 |
| session | 是否使用 HTTP Session |
| buffer | out 對象緩衝區大小 |
| autoFlush | 緩衝區滿時是否自動刷新 |
| isErrorPage | 是否為錯誤處理頁 |
| info | getServletInfo() 返回字符串 |
| errorPage | 異常轉向頁面 |
| isThreadSafe | 是否允許並行訪問 |
| isELIgnored | 是否忽略 EL 表達式 |
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>第一個JSP <% Date date = new Date(); out.print(date); %>
<%@ include file="..." %>flush="true" 必須聲明標簽庫:<%@ taglib prefix="c" uri="https://java.sun.com/jsp/jstl/core" %>
| 標簽 | 用途 | 關鍵屬性 |
|---|---|---|
| <jsp:include> | 包含靜態/動態文件 | page, flush, <jsp:param> |
| <jsp:forward> | 轉發到其他資源 | page, <jsp:param> |
| <jsp:useBean> | 創建/查找 Bean | id, scope, class/type/beanName |
| <jsp:getProperty> | 輸出 Bean 屬性 | name, property |
| <jsp:setProperty> | 設置 Bean 屬性 | name, property/param/value/* |
| <jsp:plugin> | 嵌入 Applet/JavaBean | type, code, codebase, jreversion |
<%= "請求方式:" + request.getMethod() %>
<%= "字符編碼:" + request.getCharacterEncoding() %>
<%= "協議:" + request.getProtocol() %>
<%= "請求URI:" + request.getRequestURI() %>
<%= "客戶端IP:" + request.getRemoteAddr() %>
<%= "服務器端口:" + request.getServerPort() %>
<%= "Header Host:" + request.getHeader("host") %>
<%
response.sendRedirect("out.jsp"); // 重定向
response.setHeader("Cache-Control","no-store"); // 禁用緩存
response.setHeader("refresh","5;URL=out.jsp"); // 5秒後跳轉
response.flushBuffer(); // 強制輸出
%>
<%
session.setAttribute("username", "felayman");
%>
<jsp:forward page="getsession.jsp"/>
Session: <%= session.getAttribute("username") %>
<%
pageContext.forward("out.jsp"); // 頁面跳轉
%>
掌握 JSP 指令、動作標簽、內置對象是開發動態 Web 頁面的基礎。建議優先使用 JSTL/EL 表達式減少腳本代碼。