轉發(javaWeb)

轉發(javaWeb)

從一個servlet轉發到另一個servlet

代碼示例:

/Servlet1:

package com.helong.dispatcher;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class Servlet1
 */
@WebServlet("/Servlet1")
public class Servlet1 extends HttpServlet {
	private static final long serialVersionUID = 1L;

	
	protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		System.out.println(request);
		// 請求轉發
		//1.獲取轉發器
		RequestDispatcher disp = request.getRequestDispatcher("/Servlet2");
		//域  能夠存儲數據 轉發的同時向域中寫入一些數據
		request.setAttribute("hl", "helong");
		//2.轉發
		disp.forward(request, response);
		
	}

}

 /Servlet2:

package com.helong.dispatcher;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class Servlet1
 */
@WebServlet("/Servlet2")
public class Servlet2 extends HttpServlet {
	private static final long serialVersionUID = 1L;

	
	protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //接收到的是同一個request和response
		System.out.println(request);
        //將存放到域中的數據取出來
		String value = (String) request.getAttribute("hl");
		System.out.println(value);
		
		System.out.println("Servlet2");
	}

}

 

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