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

原创 2016年09月12日 16:10:59

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




版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

spring mvc properties 中文乱码

properties中加了配置,有中文,不设置一下的话,注入bean读出来的是乱码,是这样的:{1,"֪ͨÊé±àºÅ"},{2£¬"ѧÉúÁбí"}在spring-servlet.xml中设...
  • wyljz
  • wyljz
  • 2016年12月02日 11:19
  • 698

Spring读取properties文件出现乱码的解决方法

在Spring的applicationContext.xml文件中设置和读取properties资源文件时,如果properties文件是UTF-8编码的,并且需要读取的内容包含中文,那么采取默认的p...

springmvc 使用validation校验无法加载properties文件,及验证信息乱码的问题

今天在使用JSR-303 validation进行校验时出现了标题中的相关问题 po类相关代码: @Size(min=1,max=30,message="{items.name.length....
  • Geralt3
  • Geralt3
  • 2017年07月17日 19:44
  • 567

SpringMVC+HibernateValidator,配置在properties文件中的错误信息回显前端页面出现中文乱码

SpringMVC+HibernateValidator,配置在properties文件中的错误信息回显前端页面出现中文乱码 后台在springMVC中使用hibernate-v...

SpringMVC+HibernateValidator,配置在properties文件中的错误信息回显前端页面出现中文乱码

话不多说,开门见山。 问题: 后台在springMVC中使用hibernate-validator做参数校验的时候(validator具体使用方法见GOOGLE),用properties文件配置了校...

Spring加载properties文件的两种方式

在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取properties里面的配置,这样后期只需要改动properties文件即可,...
  • eson_15
  • eson_15
  • 2016年05月10日 19:47
  • 64170

spring 注入properties属性乱码问题

使用Spring注解方式注入properties文件内容,并配合Junit4+Spring做单元测试先看看工作目录,然后再来讲解1、建立config.properties,我的config.prope...

如何在spring中读取properties配置文件里面的信息

1.首先。我们要先在spring配置文件中。定义一个专门读取properties文件的类. 例: locations"> ...

解决HttpServletResponse输出的中文乱码问题

首先,response返回有两种,一种是字节流outputstream,一种是字符流printwrite。 申明:这里为了方便起见,所有输出都统一用UTF-8编码。 先说字节流,要输出“中国"...
  • simon_1
  • simon_1
  • 2013年06月14日 11:51
  • 90456

解决SpringMVC通过model设置中文消息乱码问题

首先排除项目中的编码问题,因为除了插件tomcat没有设置UTF-8编码外,其他地方能设置编码的都设置成UTF-8了,so,看了代码和出现乱码后URL,找到出现问题的源头了,由于方法是return "...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java 简单解决springmvc获取properties文件里面中文内容出现论码问题(我遇到的问题是数据提交检验时返回的错误提示出现乱码)
举报原因:
原因补充:

(最多只允许输入30个字)