項目簡介
在映射的方法參數中注入Servlet的9種原生API。
1,使用項目1的方式搭建springmvc框架。
2,新建一個ServletApiControl類。
test方法中的九個對象即springmvc可以使用的severlet原生的api。
其中唄註釋的四個原生的api在使用的時候會產生二次讀取request域中流的異常。相互之間會有衝突。
由springmvc的AnnotationMethodHandlerAdapter類來完成這一次操作。
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.Reader;
import java.io.Writer;
import java.security.Principal;
import java.util.Locale;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/servletApiControl")
public class ServletApiControl {
@RequestMapping("/test")
public String test(
HttpServletRequest request
, HttpServletResponse response
, HttpSession session
, Locale locale
// , InputStream inputStream
, OutputStream outputStream
// , Reader reader
// , Writer writer
, Principal principal) throws IOException {
System.out.println(request);
System.out.println(response);
System.out.println(session);
System.out.println(locale);
// System.out.println(inputStream);
// System.out.println(outputStream);
// System.out.println(reader);
// System.out.println(writer);
System.out.println(principal);
return "success";
}
}
3,在頁面添加一個連接。
通過訪問該鏈接,控制檯講打印出對應的信息。
<a href="servletApiControl/test">servlet api</a>