1.可以使用:
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;
}