解决springmvc+mybatis+mysql中文乱码问题【转】
近日使用ajax请求springmvc后台查询mysql数据库,页面显示中文出现乱码
最初在mybatis配置如下
<select id="queryContentById" resultType = "java.lang.String" parameterType="String" > select text from News where id=#{o} </select>其中表News的text字段为blob类型
如此查出的text值在控制台中一直显示乱码。
之后google查找相关resultType=blob相关内容无果,遂将其改为resultType = "java.util.Map" ,且
打印出s,此时中文正常显示,但页面显示依旧乱码。
因此处为ajax请求,遂检查响应头信息,查出如下
|
1
|
Content-Typetext/html;charset=ISO-8859-1 |
由于数据库中统一为编码为utf-8,故修改响应头信息
@RequestMapping(value = "/queryContentById", method = RequestMethod.GET,produces = "text/plain;charset=UTF-8")public @ResponseBody String queryContentById(@RequestParam("id") String id) throws SQLException, UnsupportedEncodingException { Map map = (Map) ndrService.queryContentById(id); byte[] b = (byte[]) map.get("text"); String s = new String(b,"utf-8"); return s;}我们再来看下另外一个示例的问题
1、SpringMVC的Controller得到的是乱码:
(1)在web.xml加上字符集过滤器:
(2)在JSP等页面上修改:charset=UTF-8"和pageEncoding="UTF-8"
2、Controller读取到的是正确的中文,但是保存到数据库后变成“??”
(1)修改数据库连接jdbc_url=jdbc:mysql://localhost:3306/mybatistest?useUnicode=yes&characterEncoding=UTF8("&":在xml文件中表示"&")
(2)修改数据库的字符集为utf-8:打开mysql根目录下my.ini(mysql5.6为my-default.ini,要把它copy一份命名为my.ini),在下面具体位置添加(或修改):
这样设置在我这边就没什么问题了。
综述:
通常中文乱码问题都是由于字符编码设置不对导致的,我这里无论是数据库还是java文件、jsp文件,都统一成UTF-8。最后问题解决了。
- 1. 使用阿里巴巴Druid连接池(高效、功能强大、可扩展性好的数据库连接池、监控数据库访问性能、支持Common-Logging、Log4j和JdkLog,监控数据库访问)
2. 提供高并发JMS消息处理机制
3. 所有功能模块化、所有模块服务化、所有服务原子化的方式,提供可拓展的服务模型,使程序稳定运行,永不宕机
4. 提供Wink Rest、Webservice服务,故可作为独立服务平台部署框架整合:
Springmvc + Mybatis + Shiro(权限) + REST(服务) + WebService(服务) + JMS(消息) + Lucene(搜搜引擎) + Quartz(定时调度) + Bootstrap Html5(支持PC、IOS、Android)
框架简介:
项目Maven构建,真实大型互联网架构,做到高并发,大数据处理,整个项目使用定制化服务思想,提供模块化、服务化、原子化的方案,将功能模块进行拆分,可以公用到所有的项目中。架构采用分布式部署架构,所有模块进行拆分,使项目做到绝对解耦,稳定压倒一切~~
持续集成:
1. 我的待办工作流服务(提供Webservice服务)
2. 我的待办工作流集成JMS消息服务(支持高并发,可支持成千上万系统集成)
3. 我的任务提供Rest服务,完成日常的工作管理,通过定时调度平台,动态生成我的任务、循环周期任务、定时邮催提醒完成任务等
4. 文件上传、多线程下载服务化、发送邮件、短信服务化、部门信息服务化、产品信息服务化、信息发布服务化、我的订阅服务化、我的任务服务化、公共链接、我的收藏服务化等
系统模块:
1. 用户管理:
用户信息管理(添加、删除、修改、用户授权、用户栏目管理、查询等)
用户组管理(添加、删除、修改、用户组栏目授权,栏目授权、查询、用户组人员添加查询等)
用户角色管理(添加、删除、修改、用户角色授权、用户角色栏目信息查询设置等)
2. 文章管理:栏目管理:查询无限极栏目树、创建无限极栏目树分类(导航栏目、图片列表栏目、文章列表栏目、文章内容栏目等)、删除、修改栏目信息。
文章管理:创建、删除、修改文章,多维度文章查询,包括已发布、未发布、所有文章等。文章富文本编辑器、文章多文件上传、文章状态控制等。
3. 系统设置:数据字典管理:支持中、英文信息,支持无限级别分类配置,动态控制是否可用等。
部门信息管理:支持中、英文无限级别部门信息增加,删除,修改操作,部门列表、树心查询等。
日志管理:系统日志列表查询、在线查看、在线下载等
路线管理:集成百度地图API,提供线路查询管理功能
Druid Monitor(监控):集成阿里巴巴连接池,提供在线连接池监控程序,包括:数据源、SQL监控、URL监控、Session监控、Spring监控等
网站信息管理:通过系统配置文件进行网站内容操作,包括邮件服务器配置、公司基本信息配置等。
4. 集成REST服务,可以用作独立服务平台(提供大量实例及测试平台,包括:文件上传下载、邮件短信发送、部门、产品、公共连接、我的收藏、我的任务、信息发布等)
5. 集成Quartz调度,可以用作定时调度平台(动态配置调度类、调度时间,使程序自动执行某些业务)
6. Lucene搜索引擎,可以将文件资料索引化,支持文件内容搜索、关键字搜索、高亮关键字等,使信息在毫秒内提取查询出来
7. 用户设置功能:包括修改用户信息,修改密码、发送消息,修改个人图片,查看角色、查看用户组,管理员修改角色、用户、用户组等。
8. 集成Webservice平台,包括jaxws服务、CXF框架,配置双加密的权限认证。使服务集成更加安全。
9. Bootstrap html5提供了两套前台开环境,包括CMS和电子商务网站,使您的开发更加的简洁。
技术点:
1. Springmvc + Mybatis集成、SpringSecurity权限控制、Spring AOP事务处理。
2. Wink Rest服务、Webservice服务:jaxws、CXF等
3. IO 流上传下载文件,多线程操作
4. 发送邮件,配置邮件服务器,发基于html、纯文本格式的邮件5. MD5加密 (登陆密码校验加密等),用户统一Session、Cookie管理,统一验证码校验等。
6. 数据库连接池统一配置
7. Quartz定时调度任务集成(直接通过配置即可)
8. Httpclient破解验证码,登陆联通充值平台
9. 汉字、英文拆分、可以用作文档关键字搜索等。
10. Base64图片处理,支持PC,Android,IOS
11. Service Socket 、Client Socket 通信技术(已经做过GPRS数据获取,并用到了项目中)
12. 提供大量工具类,可以直接使用
13. Maven项目构建,您可以直接做架构,可以提升自己的学习能力,使您成为真正的架构师。






















解决springmvc+mybatis+mysql中文乱码问题【转】的更多相关文章
- 解决Python查询Mysql中文乱码问题
前段时间,自己瞎动手用Django写了一个更新zip包和sql到远程服务器的工具.但Python从Mysql中读取出来的中文字符会乱码,如下图: 解决办法:Python连接Mysql时指定charse ...
- 解决java种mysql中文乱码问题
乱码问题原因有多种,其中有一种是由于MySQL默认使用 ISO-8859-1 ( 即Latin1 ) 字符集,而JAVA内部使用Unicode编码,因此在JAVA中向MYSQL数据库插入数据时,或者读 ...
- 解决Python操作MySQL中文乱码的问题
原始代码: import os, sys, string import MySQLdb MYSQL_HOST = 'localhost' MYSQL_PORT = ' MYSQL_USER = 'ro ...
- 解决springmvc返回json中文乱码
在pringmvc中通过设置@ResponseBody返回json乱码问题,这个问题上网找了很久,发现答案真是人云亦云,奉上我的解决方案: 解决方案一:需要导入 jackson-core-asl-1. ...
- 总结--解决 mysql 中文乱码
首先分析一下导致mysql 中文乱码的原因: 1.建表时使用了latin 编码 2.连接数据库的编码没有指定 3.写入时就已经乱码(这种情况需要自己检查源数据了) 解决方法总结: 1.创建库时指定编码 ...
- SpringMVC学习系列-后记 解决GET请求时中文乱码的问题
SpringMVC学习系列-后记 解决GET请求时中文乱码的问题 之前项目中的web.xml中的编码设置: <filter> <filter-name>CharacterEnc ...
- php mysql 中文乱码解决方法
本文章向码农们介绍php mysql 中文乱码解决方法,对码农们非常实用,需要的码农可以参考一下. 从MySQL 4.1开始引入多语言的支持,但是用PHP插入的中文会出现乱码.无论用什么编码也不行 解 ...
- windows mysql 中文乱码和中文录入提示太大错误的解决方法
今天操作mysql的时候很郁闷,因为修改默认字符集搞了半天,终于弄成了(关于如何把windows的默认字符集设置成功,可以参看另一篇博文,最终在mysql中输入show variables like ...
- 可遇不可求的Question之导入mysql中文乱码解决方法篇
可遇不可求的Question之导入mysql中文乱码解决方法篇 先 set names utf8;然后 source c:\1.sql ?
随机推荐
- jquery.each()
$(selector).each(function(index,element)) index - 选择器的 index 位置 element - 当前的元素(也可使用 "this" ...
- listview下拉刷新和上拉加载更多的多种实现方案
listview经常结合下来刷新和上拉加载更多使用,本文总结了三种常用到的方案分别作出说明. 方案一:添加头布局和脚布局 android系统为listview提供了addfootview ...
- android Notification介绍
如果要添加一个Notification,可以按照以下几个步骤 1:获取NotificationManager: NotificationManager m_NotificationManager=(N ...
- Spark的StandAlone模式原理和安装、Spark-on-YARN的理解
Spark是一个内存迭代式运算框架,通过RDD来描述数据从哪里来,数据用那个算子计算,计算完的数据保存到哪里,RDD之间的依赖关系.他只是一个运算框架,和storm一样只做运算,不做存储. Spark ...
- JBPM
JBPM简介 什么是jbpm JBPM,全称是Java Business Process Management(业务流程管理),它是覆盖了业务流程管理.工作流.服务协作等领域的一个开源的.灵活的.易扩 ...
- 【流量劫持】沉默中的狂怒 —— Cookie 大喷发
精简版:http://www.cnblogs.com/index-html/p/mitm-cookie-crack.html 前言 上一篇文章 讲解了如何借助前端技术,打造一个比 SSLStrip 更 ...
- mono for android学习过程系列教程(5)
这一讲主要需要了解的安卓UI元素是Spinner.这个元素类似我们 winform和webform里面的下拉选项. 首先我们先建立一个新的项目,命名为SpinnerExample. 然后在Layout ...
- Xamarin.Android之Fragment Walkthrough
利用Fragment设计能够兼容不同屏幕的应用 这里我们先围观下最后的成果图,给读者打打气: 普通手机上显示的结果: 在平板上显示的结果: 笔者要郑重声明下,虽然看似是两种不同的显示效果,但是同一个应 ...
- Unity AssetBundle爬坑手记
这篇文章从AssetBundle的打包,使用,管理以及内存占用各个方面进行了比较全面的分析,对AssetBundle使用过程中的一些坑进行填补指引以及喷! AssetBundle是Unity推荐的 ...
- ABP框架 - 介绍
文档目录 本节内容: 简介 一个快速示例 其它特性 启动模板 如何使用 简介 我们总是对不同的需求开发不同的应用.但至少在某些层面上,一次又一次地重复实现通用的和类似的功能.如:授权,验证,异常处理, ...