js|網頁
1.可以使用:
ffffff border=0> response.sendRedirect("http://www.foo.com/path/error.html");
2.可以手工修改HTTP header的Location屬性,如下:
<%
response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
String newLocn = "/newpath/index.html";
response.setHeader("Location",newLocn);
%>
3.也可以使用forward:
<jsp:forward page="/newpage.jsp" />
請注意:只能在任何輸出還沒有發送到用戶端之前使用這種方式。
5.6 類似global.asa的做法
在JSP中沒有global.asa的對應物。但可以有一個workaround來運行。例如,如果你需要儲存或存取application scope變數,你總是可以建立一個Javabean,並在頁面中需要這些變數的地方將它包含進來。
<jsp:useBean id="globals" scope="application" class="com.xxx.GlobalBean"/>
但是,也有一些產品具有這樣的對應:
Allaire公司的產品JRun 3.0將提供global.jsa。JRun 2.3.3仍然給予支援,但只對JSP 0.92。當JRun 3.0最終推出時它將支援用於JSP 1.0和1.1的global.jsa。
你可以從http://beta.allaire.com/jrun30得到JRun 3.0 beta 5
另外,Oracle的JSP支援globals.jsa。
5.7 jsp顯示目前時間
<%@ page import="Java.util.*, Java.text.*" %>
<HTML>
<HEAD>
<TITLE>JSP to display the current time</TITLE>
</HEAD>
<BODY>
The current time is:
<%
Date now = new Date();
out.println(DateFormat.getTimeInstance().format(now));
%>
</BODY>
</HTML>
5.8在JSP中建立目錄 Mkdir(String path)
<%@ page import="Java.io.*" %>
<%!
String Mkdir(String path)
{
String msg=null;
Java.io.File dir;
// 建立檔案對象
dir =new Java.io.File(path);
if (dir == null) {
msg = "錯誤原因:<BR>對不起,不能建立空目錄!";
return msg;
}
if (dir.isFile()) {
msg = "錯誤原因:<BR>已有同名檔案<B>" + dir.getAbsolutePath() + "</B>存在。";
return msg;
}
if (!dir.exists())
{
boolean result = dir.mkdirs();
if (result == false) {
msg = "錯誤原因:<BR>目錄<b>" + dir.getAbsolutePath() + "</B>建立失敗,原因不明!";
return msg;
}
// 如果成功建立目錄,則無輸出。
// msg ="成功建立目錄: <B>" + dir.getAbsolutePath() + "</B>";
return msg;
}
else {
msg = "錯誤原因:<BR>目錄<b>" + dir.getAbsolutePath() + "</b>已存在。";
}
return msg;
}
%>
<%
String filepath = "/usr/home/hoyi/html/dir";
String opmsg = Mkdir(filepath);
%>
5.9將return 轉為<br>函數
public static String returnToBr(String sStr)
{
if (sStr == null // sStr.equals(""))
{
return sStr;
}
String sTmp = new String();
int i = 0;
while (i <= sStr.length()-1)
{
if (sStr.charAt(i) == '\n')
{
sTmp = sTmp.concat("<br>");
}
else
{
sTmp = sTmp.concat(sStr.substring(i,i+1));
}
i++;
}
return sTmp;
}