2012-08-17 57 views
0

我想回应一个硬编码但动态的html响应的url请求。如何使用硬编码html页面发送servlet响应?

有没有更好的办法比做下面的方式?

public void doGet(HttpServletRequest request, 
     HttpServletResponse response) 
{ 
    response.setContentType("text/html"); 
    PrintWriter out = response.getWriter(); 

    out.println("<html>"); 
    out.println("<head>"); 
    out.println("<title>Hola</title>"); 
    // 
} 

+0

你基本上必须发送HTML到文档,即做'document.write(yourHTMLThatIsGenratedDynamically)'不管你怎么做。 – 2012-08-17 12:29:33

+0

这种方式对于简单的情况是可以的。但你有活力的部分有多大?为什么不使用JSP,如果你的页面上有很多与UI相关的逻辑。 – udalmik 2012-08-17 12:31:06

+0

但那会是JS?我想从servlet的doGet/doPost请求回应网页。 – membersound 2012-08-17 12:33:05

回答

3

一种方法就是转发在你的servlet的回应:“一个硬编码的,但动态HTML响应”

getServletContext().getRequestDispatcher("mypage.html").forward(request, response); 
0

你的意思是什么目前还不清楚

如果你的意思是你有现有的HTML文件的一些数量,并希望根据请求参数选择一个,那么你的servlet可以使用Class.getResourceAsStream()载入的文件。您需要将文件打包到类路径中,如果您使用像Maven这样的工具,使用类似Ant的工具更容易,使用Eclipse或命令行构建时难以维护,这很容易。

如果您的意思是您有一个模板文件并且想要以某种方式更改内容,请使用JSP