解决jdbc连接mysq报错Unknown initial character set index '255' received from server. Initial client...问题

今天在搭建spring项目时碰到了一个问题,在xml文件中配置数据库,通过bean property注入数据

但是运行时出现错误Unknown initial character set index '255' received from server. Initial client character set can be forced via the 'characterEncoding' property. 

我在网上找了一些帖子,说是因为数据库字符集不兼容的问题,应该JDBC连接库的URL加上?useUnicode=true&characterEncoding=utf8,如图

但很不幸的是运行依旧报错,这次是报了个xml文件语法错误:对实体 "characterEncoding" 的引用必须以 ';' 分隔符结尾。

 

所以最后的解决办法:改成加

?useUnicode=true&characterEncoding=utf-8

后缀,运行一下,成功!

 

其实还有一个很简单的方法:改pom.xml文件中mysql依赖版本

我原来用的mysql版本是5.1.6,会产生报错

 

换成5.1.44,就不再出现报错了

  • 7
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
DNetORM源码 源码描述: 一、源码介绍 1、DNetORM 是一款基于.net的轻量级的、轻配置的ORM框架,核心代码只有100K大小,支持SQLSERVERMYSQL、ORACLE数据库,DNetORM的核心思想是,将最接近原生的C#代码映射出最符合场景的sql语句,从而最大程度提升开发效率。 2、为什么要开发一款orm框架,笔者在开发的这些年里,使用了很多框架,有第三方的譬如mybatis、nhibernate、ef等等,但是它们都不符合我的开发习惯,首先我喜欢轻配置,不喜欢将大量的sql语句写在配置文件里,也不喜欢将实体映射关系写在配置文件里,所以像mybatis、nhibernate这种重配置的orm我并不喜欢,EF算是一个功能强大的框架,但是EF也有一些缺陷,过于笨重,另外EF对于mysql、oracle的支持并不友好。另外还有一些其他框架接口封装的不友好、要么写法过于繁琐、要么接口不清晰,这些因素都是促使我写一个符合我的开发场景的orm 3、DNetORM使用起来非常简单,DNetORM拒绝封装过多的方法,这会造成使用的难度,只是封装了增删改查基本常用的一些方法,所以使用起来会非常简单。 4、DNetORM对于多表的联查进行了常规的封装支持了LEFT JOIN, INNER JOIN ,GROUP BY , ORDER BY, WHERE,对于复杂的写法,建议使用DNetORM提供的SQL查询接口,我们在开发中使用orm是为了提升开发效率,节省开发时间,这是为什么使用orm的目的,orm不是为了避免使用sql,实际开发中有很多查询语句会很复杂,如果依赖orm,首先orm即使支持的话也会写的很复杂,并不直观,以往有开发的筒子们在用linq实现相同的复杂一点的sql的时候,写个sql也就是5分钟,但是为了实现linq的写法写了半小时,还写的不正确,所以这些都是违背开发精神的。所以ORM是一个开发工具,它的出现就是为了节省开发时间、提升开发效率,使用orm可以帮你解决增删改的繁杂琐事,在查询上,orm帮你处理了大部分的单表查询,在多表的查询上,orm帮你处理简单的多表查询,帮你最快的获取数据,至于复杂的sql查询,直接使用sql查询接口。也许这种做法更加合理。 二、注意事项 1、开发环境为Visual Studio 2015,使用.net 4.0开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值