5.1 包括
我還想談談更多的魔術指令。第一個這樣的指令是include指令。它允許您在指示頁面的位置插入另一個文件。這種指令的一般格式是:
<%@ include file="url"%>
您不僅可以指定文件,還可以指定另一個 jsp-servlet,甚至是 url。
例子:
<%@ include file="header.jsp"%>
<%
double num = Math.random();
if (num > 0.95) {
out.print(num);
}
%>
<%@ include file="footer.jsp"%>
例如,您可以將站點所有頁面的頂部放在 header.jsp 中,將底部放在 footer.jsp 中,並將所有頁面收集為構造函數。
5.2前進
還記得經典的 servlet 能夠重定向或轉發到另一個 url 嗎?在 JSP 中,這也是可能的,為此有一個特殊的操作。它的外觀與您之前看到的略有不同:
<jsp:forward page="url"/>
還有一個更高級的選項——帶參數:
<jsp:forward page="url" >
<jsp:param name="Name" value="meaning"/>
<jsp:param name="Name" value="meaning"/>
<jsp:param name="Name" value="meaning"/>
</jsp:forward>
例子:
<html>
<head>
<title>The Forward Example</title>
</head>
<body>
<center>
<h2> Forward example </h2>
<jsp:forward page="login.jsp"/>
</center>
</body>
</html>
5.3 重定向
重定向沒有特殊指令,但可以通過調用 Java 代碼來完成。
例子:
<body>
<%
String redirectURL = "https://codegym.cc/";
response.sendRedirect(redirectURL);
%>
</body>
此示例將發送302
重定向。如果您需要301
重定向,則需要多寫幾行代碼:
<body>
<%
response.setStatus(301);
response.setHeader("Location", "https://codegym.cc/");
response.setHeader("Connection", "close");
%>
</body>
GO TO FULL VERSION