select原生的请求参数有一下几种:
1:httpselectRequest
2:httpSelectRespnse
3:httpSession
此处的session永远不为null。
注意:session访问不是线程安全的,如果需要线程安全,需要设置AnnotationMethodHandlerAdapter或RequestMappingHandlerAdapter的synchronizeOnSession属性为true,即可线程安全的访问session。
publicString session(HttpSession session){
System.out.println(session);
return"success";
}
4:java.security.Principal :是一个安全机制只有当
返回一个java.security.Principal 对象,该对象包含当前授权用户的名称
使用request.getUserPrincipal().getName()得到用户名
5:Locale 这个是来更换显示的语言,国际化标签
@Controller
publicclassLocalChange{
@Autowired
privateLocaleResolver localeResolver;
@RequestMapping("/changeLocale")
publicString changeLocal(String locale,
HttpServletRequest request,
HttpServletResponse response){
Locale l =newLocale(locale);
localeResolver.setLocale(request, response, l);
return"redirect:helloworld";
}
}
6:InputStream
7:OutputStream
publicvoid inputOrOutBody(InputStream requestBodyIn,OutputStream responseBodyOut)
throwsIOException{
responseBodyOut.write("success".getBytes());
}
requestBodyIn:获取请求的内容区字节流,等价于request.getInputStream();
responseBodyOut:获取相应的内容区字节流,等价于response.getOutputStream()。
8:Reader
9:Writer :往外输出值
publicvoid readerOrWriteBody(Reader reader,Writer writer)
throwsIOException{
writer.write("hello");
}
reader
:获取请求的内容区字符流,等价于request.getReader();
writer:获取相应的内容区字符流,等价于response.getWriter()。
InputStream/OutputStream 和 Reader/Writer两组不能同时使用,只能使用其中的一组。