mybatis No enum const class org.apache.ibatis.type.JdbcType.Date 坑爹的配置
转自:https://lihaiming.iteye.com/blog/2248059
在ibatis中不需要关注这些参数 而转到mybatis后 如果字段值为空 必须设置jdbcType
如
insert into testTable
(ID,
NAME,
DESCRIPTION,
IMAGEURL,
LINKURL,
ISALWAYS,
ISDISPLAYINDEX,
DISPLAYWEIGHT,
STARTTIME,
ENDTIME,
CREATOR,
CREATTIME,
MODIFYTIME)
values
(SEQ_ACTIVITY_TABLE.NEXTVAL,
#{name},
#{desc,jdbcType=VARCHAR},
#{imageUrl,jdbcType=VARCHAR},
#{linkUrl,jdbcType=VARCHAR},
#{isAlways,jdbcType=CHAR},
#{isDisplayIndex,jdbcType=CHAR},
#{displayWeight,jdbcType=VARCHAR},
#{startTime,jdbcType=DATE},
#{endTime,jdbcType=DATE},
#{creator,jdbcType=VARCHAR},
sysdate,
sysdate
)
</insert>
这些设置之多,太烦了,最让人烦的是 jdbcType = DATE,类型还必须大写,不能小写。
如下面的例子,将DATE 改成 Date 。结果让人很抓狂啊!!!
insert into testTable
(ID,
NAME,
DESCRIPTION,
IMAGEURL,
LINKURL,
ISALWAYS,
ISDISPLAYINDEX,
DISPLAYWEIGHT,
STARTTIME,
ENDTIME,
CREATOR,
CREATTIME,
MODIFYTIME)
values
(SEQ_ACTIVITY_TABLE.NEXTVAL,
#{name},
#{desc,jdbcType=VARCHAR},
#{imageUrl,jdbcType=VARCHAR},
#{linkUrl,jdbcType=VARCHAR},
#{isAlways,jdbcType=CHAR},
#{isDisplayIndex,jdbcType=CHAR},
#{displayWeight,jdbcType=VARCHAR},
#{startTime,jdbcType=Date},
#{endTime,jdbcType=DATE},
#{creator,jdbcType=VARCHAR},
sysdate,
sysdate
)
</insert>
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.builder.BuilderException: Error resolving JdbcType. Cause: java.lang.IllegalArgumentException: No enum const class org.apache.ibatis.type.JdbcType.Date
org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:75)
org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:368)
更坑爹的在后面,上面insert时的时候用#{endTime,jdbcType=DATE},可以将时间插入成功,且可以精确到时分秒
但如果在update语句中也这样使用,那你得到的只会有日期,这够坑爹的了吧 ,尼玛 比起ibatis方便之处差远了
要想在update语句中 将时间格式化成时分秒 不得不再加一个类型 如下面:
startTime = #{startTime,javaType=DATE, jdbcType=VARCHAR}
最新文章
- IIC总线
- mac brew 安装php扩展报错:parent directory is world writable but not sticky
- ios初级必看视频
- nios II--实验3——led 100M软件部分
- namenode需要升级
- hiho一下 第九十五周 数论四&#183;扩展欧几里德
- HTTP Live Streaming直播(iOS直播)技术分析与实现
- poj 2377 Bad Cowtractors
- Linux网络编程9&mdash;&mdash;对TCP与UDP的简易封装2.0
- Codeforces Round #114 (Div. 1) A. Wizards and Trolleybuses 物理题
- Codeforces Round #324 (Div. 2) B. Kolya and Tanya 快速幂
- Com 笔记 -可连接对象
- AngularJs练习Demo3
- mysql的触发器
- insertMany
- oracle创建数据库表空间 用户 授权 导入 导出数据库
- js 延时等待
- golang中的mutex锁
- vue 动态循环出的多个select 不能重复选择相同的数据
- Python3 与 C# 并发编程之~ Net篇
热门文章
- Codeforces 9D How many trees? 【计数类DP】
- For input string: "null"
- python,java操作mysql数据库,数据引擎设置为myisam时能够插入数据,转为innodb时无法插入数据
- json常用方法和本地存储方法
- 【DUBBO】dubbo的registry配置
- nginx-unit docker 运行以及php &;&;golang 简单使用
- parceljs 基本使用———又一个前端构建工具
- 我的 Git 学习过程
- easyui datagrid 基础方法和事件
- java的时间