很长时间没写后台代码有点生疏了,这不今天又出点小插曲,写个文章记录下。

由于要上传点数据到后台,顺手整了个mybatis+springmvc。在保存数据时出现了异常。

Creating a new SqlSession
SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@71670c91] was not registered for synchronization because synchronization is not active
JDBC Connection [jdbc:mysql://localhost:3306/statsdb?useUnicode=true&characterEncoding=UTF-8, UserName=root@localhost, MySQL Connector Java] will not be managed by Spring
==> Preparing: insert into record_info
==> Parameters:
Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@71670c91]

看提示还以为事务啥的有问题,一通资料查找处理后,发现问题还在。

于是换postman调试接口,看看具体什么错误

BadSqlGrammarException

有点懵逼,SQL都是generator生成的。抱着怀疑的态度,xml中的SQL改的简单点 insert into record_info (model) values ('xx'),运行居然成功。果然是这块有问题,于是继续改SQL,改成参数形式:insert into record_info (model) VALUES (#{model,jdbcType=VARCHAR}),运行成功发现没值。这时感觉有点不对,值肯定传了啊。于是查看赋值代码,这一看发现问题了,忘了提取data数据进行转换,改正后还原xml代码,运行成功...

if (!StringUtils.isBlank(body)) {
       //错误的写法
       //RecordInfo recordInfo = getGson().fromJson(body, RecordInfo.class);        //改正后写法
JsonParser jsonParser = new JsonParser();
JsonElement ele = jsonParser.parse(body);
JsonElement jo = ele.getAsJsonObject().get("data");
RecordInfo recordInfo = getGson().fromJson(jo, RecordInfo.class);
if (recordInfo != null) {
reportService.addPosRecordInfo(recordInfo);
}
}

  

结论:由于参数赋值有问题,导致SQL运行出错

Mybatis异常处理之MySQL Connector Java] will not be managed by Spring的更多相关文章

  1. mybatis/callablestatement调用存储过程mysql connector产生不必要的元数据查询

    INFO | jvm 1 | 2016/08/25 15:17:01 | 16-08-25 15:17:01 DEBUG pool-1-thread-371dao.ITaskDao.callProce ...

  2. MySQL Connector/J 6.x jdbc.properties 配置, mysql-connector-java-6.0.4.jar 异常

    今天学习SSM框架整合,完成Spring和mybatis这两大框架的整合做测试时候出来很多问题,主要来自于配置文件. 我这里重点说一下Mysql数据驱动配置. 配置pom.xml时候去网站 MySQL ...

  3. MySQL Connector/J

    5.1 Developer Guide 1. MysQL为由Java语言编程的客户端程序提供连接:MySQL Connector/J,这是一个实现Java Database Connectivity( ...

  4. [转]MySQL Connector/C++(一)

    http://www.cnblogs.com/dvwei/archive/2013/04/18/3029464.html#undefined#undefined MySQL Connector/C++ ...

  5. Spring学习总结(五)——Spring整合MyBatis(Maven+MySQL)二

    接着上一篇博客<Spring整合MyBatis(Maven+MySQL)一>继续. Spring的开放性和扩张性在J2EE应用领域得到了充分的证明,与其他优秀框架无缝的集成是Spring最 ...

  6. Spring学习总结(五)——Spring整合MyBatis(Maven+MySQL)一

    MyBatis-Spring 会帮助你将 MyBatis 代码无缝地整合到 Spring 中. 使用这个类库中的类, Spring 将会加载必要的MyBatis工厂类和 session 类. 这个类库 ...

  7. MySQL connector c++使用笔记

    MySQL的connector官方地址: http://dev.mysql.com/downloads/connector/ 针对c++来说, 可以选择c或者c++的库. c++的实现是参考了java ...

  8. presto 配置mysql.properties异常Database (catalog) must not be specified in JDBC URL for MySQL connector

    在presto 0.210 以后配置mysql.properties的时候,对于jdbc-url属性配置后面要加上对应要链接的database connection-url=jdbc:mysql:// ...

  9. MySQL、Hive以及MySQL Connector/J安装过程

    MySQL安装 ①官网下载mysql-server(yum安装) wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch. ...

随机推荐

  1. 对于redis框架的理解(三)

    上一篇讲完了initServer的大体流程,其中aeCreateEventLoop(),这个函数 没有详细说明,我们在这一篇里讲述Ae.h和Ae.c, 这里面的api阐述了如何创建 eventLoop ...

  2. discuz uc_server 配置登录

    新运行uc_server环境,先配置好ucenter链接-----这部很重要,我从新环境中安装下载的discuz代码,这部没配置,密码又不知道,怎么更改调试,都不起作用,在框架中,跳转到了原来线上的u ...

  3. mysql 中delete和trncate区别

    mysql中删除表记录delete from和truncate table的用法区别: MySQL中有两种删除表中记录的方法:(1)delete from语句,(2)truncate table语句. ...

  4. CF821 E. Okabe and El Psy Kongroo 矩阵快速幂

    LINK 题意:给出$n$条平行于x轴的线段,终点$k$坐标$(k <= 10^{18})$,现在可以在线段之间进行移动,但不能超出两条线段的y坐标所夹范围,问到达终点有几种方案. 思路:刚开始 ...

  5. asp.net实现access数据库分页

    最近在编程人生上看到篇文章很有感触,觉得人生还是要多奋斗.今天给大家贡献点干货. <divclass="page"id="ctrlRecordPage"& ...

  6. node的简单爬虫

    最近在学node,这里简单记录一下. 首先是在linux的环境下,关于node的安装教程:   https://github.com/alsotang/node-lessons/tree/master ...

  7. react 修改state某一属性值

    1.state // 筛选框相关数据 searchSelect: { term: { value: '学期', key: '', options: [] }, type_of_personnel: { ...

  8. bzoj 3083 树链剖分

    首先我们先将树提出一个根变成有根树,那么我们可以通过树链剖分来实现对于子树的最小值求解,那么按照当前的根和询问的点的相对位置关系我们可以将询问变成某个子树和或者除去某颗子树之后其余的和,前者直接询问区 ...

  9. 从ISE14.7使用Micoblaze点亮led灯

    1. ISE => new program => new source => embedded processor 2. XPS 2.1 create new xps program ...

  10. 常见踩坑案例(一) subList引起FULLGC

    计划真的赶不上变化,时间过得真快.废话不多说了,今天主要记录之前有同事遇到的一些坑分享出来. 一.封装类的应用会引起NPE异常 对于其他对象的应用,一般在使用之前会判断它是否为空,如果不为空才会使用它 ...