上线前我们没有关注 oracle的编码,测试环境一直是chinese utf-8,而生产库oracle集群配置的是AMERICAN_AMERICA.AL32UTF8,
导致上线后系统添加数据到后台变为乱码,通过校验 后台处理逻辑为 iso8859-1的时候转化gbk是正确的,其中linux编码为en_utf-8
我开始提的方案是,1.转化linux系统编码 2.改变生产环境oracle编码,3过滤器设置编码
第一种 开始以为是linux本地字符集的问题,就在那试了一遍所有的字符集,设置lang,可惜到最后还是没有效果
第二种 跟客户确认是不能变的,
第三种 试试也不顶用
可愁死了,翻百度又没有方案,这时 同事说了一种方案,在过滤器中添加字符转化的方法,用wrapper类,一试果然好用。