Java 简单解决springmvc获取properties文件里面中文内容出现论码问题(我遇到的问题是数据提交检验时返回的错误提示出现乱码)(大神勿喷)

我百度了很多方法,都没有解决properties文件返回的数据出现乱码问题,可能是我的eclipse的出了问题,我根据自己的想法和结合网上的方法解决了properties文件返回论码问题。

下面是我的demo界面

提交数据前界面

提交数据后界面


之前返回的是乱码的,经过我自己编码后就正常了,


这是我的properties文件内容




下面看代码了


//TODO 商品信息修改提交
@RequestMapping("/editItemsSubmit")
public String editItemsSubmit(
Model model,
HttpServletRequest request,
Integer id,
@Validated ItemsCustom itemsCustom,
BindingResult bindingResult) throws Exception {

//获取检验错误信息
if(bindingResult.hasErrors()){
//输出错误信息
List<ObjectError> allErrors=bindingResult.getAllErrors();//接受检验错误结果

List<String> listErrors=new ArrayList<>();//自定义一个list接受自己编码后的提示字符串,在把自己定义的list传到界面,
//这样就解决了把乱码传到界面的问题了

for (ObjectError objectError : allErrors) {
//输出错误信息
/*System.out.println(objectError.getDefaultMessage());*/
String strError=new String(objectError.getDefaultMessage().getBytes("ISO-8859-1"),"UTF-8"); //把返回错误的提示再次编码
listErrors.add(strError);//把编码好的错误提示信息加自己定义好list集合里面去
//错误提示信息如果没有出现乱码的话可以自己把 allErrors 这个错误结果直接返回界面的,
//但是出现了乱码不能直接把结果返回界面,我不懂怎么样在界面编码所以只能在返回之前就解决乱码的问题
}
//通过形参中的model将model数据传到页面去
//相当于modelandview.addObject方法
model.addAttribute("allErrors", listErrors);
return "items/editItems";//重新加载界面
}}



下面看jsp界面代码



<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>修改商品信息</title>

</head>
<body>



<!-- 显示错误信息 -->
<c:if test="${allErrors!=null}">
<c:forEach items="${allErrors}" var="error">
<span>${error}</span>
<br />
<br />
<!-- 循环获取自己定义的list错误信息 -->
<%-- <span>map:${error.defaultMessage }</span> 如果不出现乱码的情况下是用这个来接受错误提示信息的 <br/><br/> --%>
</c:forEach>
</c:if>




<form id="itemForm"
action="${pageContext.request.contextPath }/items/editItemsSubmit.action"
method="post">
<input type="hidden" name="id" value="${itemsCustom.id }" /> 修改商品信息:
<table width="100%" border=1>
<tr>
<td>商品名称</td>
<td><input type="text" name="name" value="${itemsCustom.name }" /></td>
</tr>
<tr>
<td>商品价格</td>
<td><input type="text" name="price"
value="${itemsCustom.price }" /></td>
</tr>
<tr>
<td>商品生产日期</td>
<td><input type="text" name="createtime"
value="<fmt:formatDate value="${itemsCustom.createtime}" pattern="yyyy-MM-dd HH:mm:ss"/>" /></td>
</tr>
<%-- <tr>
<td>商品图片</td>
<td>
<c:if test="${item.pic !=null}">
<img src="/pic/${item.pic}" width=100 height=100/>
<br/>
</c:if>
<input type="file" name="pictureFile"/>
</td>
</tr> --%>
<tr>
<td>商品简介</td>
<td><textarea rows="3" cols="30" name="detail">${itemsCustom.detail }</textarea>
</td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="提交" />
</td>
</tr>
</table>

</form>
</body>

</html>



教程到此结束,如果有不懂得地方请联系我QQ1095788063




更多相关文章

  1. 与adb的连接已关闭,并且发生了严重错误[重复]
  2. android 百度地图app key 230 错误解决
  3. Android项目实战--手机卫士01--启动界面
  4. Android Filetransfer错误码3
  5. android 输入法界面显示的开关
  6. 问题记录-Activity跳转后显示空白界面
  7. Android棉花糖“不能播放这个视频”错误
  8. DroidDraw---Android的界面设计工具
  9. Android界面的.9.png图片显示出错,怎么回事啊?

随机推荐

  1. Android(安卓)实现 WheelView
  2. Android(安卓)ApiDemos示例解析(162):Vie
  3. android系统服务 adbd服务的开启
  4. Linux下安装Android(安卓)Studio
  5. [Android][Memory Leak] InputMethodMana
  6. android 新浪微博sdk使用-分享
  7. Android(安卓)Studio中必须懂的Gradle(一
  8. android中Spinner特效
  9. Android面试系列文章2018之Java部分类加
  10. 深入分析Android(安卓)(build/core/*.mk