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 这个是来更换显示的语言,国际化标签
@ControllerpublicclassLocalChange{@AutowiredprivateLocaleResolver 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两组不能同时使用,只能使用其中的一组。
本文详细介绍了Spring MVC中处理HTTP请求的各种内置参数类型,包括如何使用HttpSession进行线程安全的会话管理、通过Principal对象获取用户信息、利用Locale进行国际化配置以及如何操作InputStream和OutputStream等。

1万+

被折叠的 条评论
为什么被折叠?



