执行JSP后生成HTML静态文件
import java.io.ByteArrayOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpServletResponseWrapper;
public class toHtml extends HttpServlet {
public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String url="";
String name="";
ServletContext sc = getServletContext();
//你要访问的jsp文件,如index.jsp
//则你访问这个servlet时加参数.
//如http://localhost/toHtml?file_name=index
String file_name=request.getParameter("file_name");
//这是你要生成HTML的jsp文件,如
//http://localhost/index.jsp的执行结果.
url = "/"+file_name+".jsp";
//这是生成的html文件名,如index.htm.
name="/home/resin/resin-2.1.6/doc/"+file_name+".htm";
RequestDispatcher rd = sc.getRequestDispatcher(url);
final ByteArrayOutputStream os = new ByteArrayOutputStream();
final ServletOutputStream stream = new ServletOutputStream() {
public void write(byte[] data, int offset, int length) {
os.write(data, offset, length);
}
public void write(int b) throws IOException {
os.write(b);
}
};
final PrintWriter pw = new PrintWriter(new OutputStreamWriter(os));
HttpServletResponse rep = new HttpServletResponseWrapper(response) {
public ServletOutputStream getOutputStream() {
相关文档:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta NAME="Copyright" CONTENT="Copyright (c) 2009 LOADCOM Corporation. All Rights Reserved."> ......
文章转自【PHP探路者】
XML 应用于 web 开发的许多方面,常用于简化数据的存储和共享。
如果需要在 HTML 文档中显示动态数据,那么每当数据改变时将花费大量的时间来编辑 HTML,
XML 可以把数据从 HTML 中分离开来。
通过 XML,数据能够存储在独立的 XML 文件中。这样你就可以专注于使用 HTML 进行布局和显示,并确保修 ......
1 javascript ,设置一个变量,只允许提交一次。
2 还是javascript,将提交按钮或者image置为disable
onsubmit="getElById('submitInput').disabled = true; return true;">
3 利用struts的同步令牌机制
......
JSP/Servlet转发与重定向的区别
尽管HttpServletResponse.sendRedirect 方法和RequestDispatcher.forward 方法都可以让浏览器获得另外一个URL所指向的资源,但两者的内部运行机制有着很大的区别。
下面是HttpServletResponse.sendRedirect 方法实现的请求重定向与RequestDispatcher.forward 方法实现的请求 ......