ssm框架学习---开发中遇到的乱码问题

一、在浏览器访问jsp页面时遇到乱码的问题

(1)在jsp页面没有指定字符集编码




    
    登录



登录








解决办法时加上头部这一部分<%@ page contentType="text/html; charset=utf-8"%> 默认一般情况下,java内核和class都是采用unicode来编码的,而jsp页面的默认解码方式是

iso的,因此导致无法解析

(2)编码字符集设置不一致

<%@ page language="java" pageEncoding="gb2312"%> -----1

<%@ page contentType="text/html;charset=iso8859-1"%>-----2





JSP的中文处理

------3





<%out.print("JSP的中文处理");%>



第一处<%@ page language="java" pageEncoding="gb2312"%>的编码格式为jsp文件的存储格式。根据这个编码格式保存文件。并编译jsp文件,包括里面的汉字。
第二处编码为解码格式。因为存为gb2312的文件被解码为iso8859-1,这样如有中文肯定出乱码。也就是必须一致。而第二处所在的这一行,可以没有。缺省也是使用iso8859-1的编码格式。所以如果没有这一行的话,也会出现乱码。必须一致才可以。

第三处编码为控制浏览器的解码方式。如果前面的解码都一致并且无误的话,这个编码格式用不用设置都可以。有的网页出现乱码,就是因为浏览器不能确定使用哪种编码格式。因为页面有时候会嵌入页面,导致浏览器混淆了编码格式出现了乱码。

目前开发中遇到的第一个编码问题,一篇博客中总结了数据提交,数据库等编码问题,先mark下地址

http://www.cnblogs.com/chengkai/articles/2171848.html

二、post和get中出现的乱码问题

(1)post乱码问题

解决办法:在web.xml中增加解决解决post乱码的过滤器

  
  
    CharacterEncodingFilter
    org.springframework.web.filter.CharacterEncodingFilter
    
      encoding
      utf-8
    
  
  
    CharacterEncodingFilter
    /*
  
(2)get乱码问题

get乱码一般都是页面编码和web容器如tomcat中的不一致,tomcat默认的时iso8859-1的编码

解决办法:一种时在tomcat的配置文件中增加比如用到的utf-8的编码如下

一种就是对参数进行iso的转码

你可能感兴趣的:(SSM)