2012-08-17 89 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