记一次SSH中文乱码解决方案

阅读: 评论:0

记一次SSH中文乱码解决方案

记一次SSH中文乱码解决方案

前言:项目中有中文乱码是因为乱码编码产生。

近期在用SSH写OA系统的时候遇到中文乱码问题,解决之余写下一丢丢心得,每天进步一小步,又与大神靠近一大步嘛!^_^!

SSH是否还有公司在使用,SSH还配不醅称为三大框架这里先按下不表,这里只是给出某次博主遇到问题的解决方案。

1.数据库的编码。我的项目默认的用的是utf-8,那么在创建数据库的时候一定也要使用utf-8编码,创建数据库的关键语句:

--创建数据库的sql语句--
create database oa default character set utf8;--查询数据库编码的sql语句--
show create database oa;

2.项目的编码。新建工程,类型为Web Project,设置默认编码为UTF-8。右键项目名称->Properties->Resource->Text file encoding,选择utf-8,点击Apply应用。

3.jsp编码:使用utf-8编码,最好还是在l配置文件添加过滤编码:

    <!--解决乱码    -->
<constant name="ding" value="UTF-8"></constant>

这时候我用debug模式在后台接收参数,得到的编码居然还是乱码,用firebug查看浏览器发起的请求url地址:

localhost:8080/MyOa1.0/department_edit.action?id=5&parentId=0&name=%E7%B3%BB%E7%BB%9F%E7%A0%94%E5%8F%91%E9%83%A8&description=%E7%B3%BB%E7%BB%9F%E7%A0%94%E5%8F%91%E9%83%A8&x=36&y=10

url传过去本来就是乱码的,才记得,貌似这种方法对get请求不起作用,只对post起作用,于是把我的form表单换成post请求,这时候后台拿到了正确的内容。

<c:if test="${department.id == null}"><form action="department_add.action" method="post">
</c:if>
<c:if test="${department.id != null }"><form action="department_edit.action" method="post">
</c:if>

上面是jstl的标签,部门管理模块,可是后台拿到正确的内容不表表插入数据库中也正确,这时候向数据库插入的居然还是乱码,一大堆的????

4.配置Hibernate的编码。在jdbc.proties加上以下后缀:

useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull

于是jdbcUrl变成下面的格式:

jdbcUrl     = jdbc:mysql:///oa?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull

oa是数据库名称,useUnicode=true和character=utf8相信你见名知意,后面的zeroDateTimeBehavior是什么意思呢?意思是如果有某个字段的时间戳是00000–000 00:00:00的时候,那么返回回来的是null,比如数据库有两个字段有时间有关,creattime和updatetime,在insert的时候,如果你只给createtime赋值,没有给updatetime赋值,那么updatetime就是0年0时0分,这时候用上面提示的后缀会将它映射为null。不然在mybatis中,会报格式错误。

本文发布于:2024-02-04 16:28:09,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170711640257258.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:乱码   中文   解决方案   SSH
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23