hualinux servlet 2.14:ServletResponse 接口及其子接口

目錄

一、知識點

二、例子

2.1 例1:在web上輸出“hello”

2.2 例2:指定響應格式,如word文檔


上章講了ServletRequest是處理請求的,有請求就有響應,本章將講ServletResponse響應。

一、知識點

ServletResponse: 封裝了響應信息,如果想給用戶什麼響應,具體可以使用該接口的方法實現。

通過JEE API可以知道ServletResponse有哪些方法,常用的不多就getWriter,如下:

更多是使用子接口HttpServletResponse,其中sendRedirect() 方法很重要

 

二、例子

2.1 例1:在web上輸出“hello”

前面幾章的例子都是在ide中顯示輸出結果的,不可能讓用戶看ide吧,所以要把結果輸出給頁面,就用到了我們的主角 ServletResponse

把上章《hualinux servlet 2.13:ServletRequest 接口及其子接口》Login.java的service()方法修改如下:

//需要導入的類
import java.io.PrintWriter;

@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
    PrintWriter out = servletResponse.getWriter();
    out.println("hello");
}

重啓tomcat, 在打開的瀏覽器,隨順輸入一些東西,然後點“提交”會看到頁面有hello的字樣,再也不是空白頁面了^_^

 

2.2 例2:指定響應格式,如word文檔

我們要查看tomcat支持哪些MIME類型,可以在根目錄的conf-->web.xml,查找

<mime-mapping>
    <extensi on>doc</extensi on>
    <mime-type>application/msword</mime -type>
</mime-mapping>

<mime-mapping>
    <extension>docm</extensi on>
    <mime-type>application/vnd.msword.document.macroenabled.12</mime-type>
</mime- mapping>

<mime- mapping>
    <extensi on>docx</extensi on>
    <mime-type>application/vnd.openxmlformats-officedocument.wordprocessingml.document</mime-type>
</mime mapping>

我們就用上面第1個,知道類型爲“application/msword”,指定一下就OK了

我們在T1.java類的service方法中添加如下代碼

import java.io.PrintWriter;

@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
    servletResponse.setCharacterEncoding("UTF-8");
    servletResponse.setContentType("application/msword");
    PrintWriter out = servletResponse.getWriter();
    out.println("用servletResponse指定doc類型");
}

在idea打開的瀏覽器尾部添加t1,彈出下載對話框

下載用word打開,結果如下:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章