servletResponse 實用的頁面跳轉技術和定時刷新技術


package response;

import java.io.IOException;
import java.util.Random;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class ResponseDemo5 extends HttpServlet {
    
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        test3(request, response);
    }
    //這種方法開發中常用
    private void test3(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        //通過meta標簽來模擬頁面跳轉
        String message = "<meta http-equiv='refresh' content='3;url=/requestandresponse/index.jsp'>恭喜你登錄成功,頁面將在3秒內跳轉,如不跳轉請點擊<a href=''>超鏈接</a>";
        this.getServletContext().setAttribute("message", message);
        //頁面跳轉到jsp頁面
        this.getServletContext().getRequestDispatcher("/message.jsp").forward(request, response);
    }

    //這種方法在開發中是不用的以為,提示信息是交給jsp頁面顯示的,不能通過servlet直接顯示
    private void test2(HttpServletResponse response) throws IOException {
        //假設這是一個用於處理登錄的Servlet
        //假設程序運行到此,用戶登錄成功了
        response.setCharacterEncoding("UTF-8");
        response.setContentType("text/html;charset=UTF-8");
        response.setHeader("refresh","3;url='/requestandresponse/index.jsp'");
        response.getWriter().write("恭喜你登錄成功,頁面將在3秒內跳轉,如不跳轉請點擊<a href=''>超鏈接</a>");
    }
    
    private void test1(HttpServletResponse response) throws IOException {
        //通知瀏覽器每隔3秒刷新一次
        response.setHeader("refresh","3");
        String data = new Random().nextInt(10000)+"";
        response.getWriter().write(data);
    }

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }

}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM