springmvc处理http请求和响应(学习笔记——SpringMVC处理响应数据;SpringMVC处理请求域响应乱码问题)
导读:2023-01-20...
2023-01-20
一 、SpringMVC处理响应数据
1 、处理响应数据方式一
(1)语法:使用ModelAndView对象作为返回值类型 ,处理响应数据
(2)底层实现原理
①数据共享到request域
②跳转路径方式:转发
(3)示例代码
<h3>测试Response数据</h3>
<a th:href="@{/testModelAndView}">测试testModelAndView数据</a>
2 、处理响应数据方式二
(1)语法:使用Map或Model或ModelMap作为参数入参 ,处理响应数据
(2)底层实现原理
①数据共享到request域
②跳转路径方式:转发
(3)示例代码
private final static String SUCCESSRESPONSE="response_success";
@RequestMapping("/testModelOrMapOrModelMap")
public String testModelOrMapOrModelMap(ModelMap modelMap){
modelMap.addAttribute("stuName","lisi");
return SUCCESSRESPONSE;
}
3 、将数据共享到session域
(1)示例代码
@RequestMapping("/testSession")
public String testSession(HttpSession session){
session.setAttribute("stuName","wangwu");
return SUCCESSRESPONSE;
}
二 、SpringMVC处理请求域响应乱码问题
1 、javaWeb解决乱码
(1)解决POST请求乱码
request.setCharacterEncoding("UTF-8");
(2)解决GET请求乱码
<Connector URIEncoding="UTF-8" port="8080" protocol="HTTP/1.1"
connectionTime="20000" redirectPort="8443" />
(3)解决响应乱码
response.setCharacterEncoding("GBK");
response.setContentType("text/html;charset=UTF-8");
2 、使用CharacterEncodingFilter步骤
(1)注意:CharacterEncodingFilter必须注册在第一个过滤器位置
(2)步骤:
①注册CharacterEncodingFilter
②为CharacterEncodingFilter设置初始化
<!-- 解决中文乱码的过滤器(注意:该过滤器要放在最上面)-->
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<!-- 设置初始化字符集-->
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<!-- 解决请求和响应乱码-->
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
声明:本站所有文章 ,如无特殊说明或标注 ,均为本站原创发布 。任何个人或组织 ,在未征得本站同意时 ,禁止复制 、盗用 、采集 、发布本站内容到任何网站 、书籍等各类媒体平台 。如若本站内容侵犯了原著者的合法权益 ,可联系我们进行处理 。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!