Mybatis mapper层No enum constant org.apache.ibatis.type.JdbcType.date
来源:互联网 发布:python http 断点续传 编辑:程序博客网 时间:2024/06/05 23:41
转载自 http://www.blogjava.net/hello-yun/archive/2013/11/26/406862.html
在ibatis中,mapper层不需要关注这些参数而转到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}
阅读全文
0 0
- Mybatis mapper层No enum constant org.apache.ibatis.type.JdbcType.date
- No enum constant org.apache.ibatis.type.JdbcType.date
- Mybatis异常-java.lang.IllegalArgumentException: No enum constant org.apache.ibatis.type.JdbcType.NUMBE
- mybatis No enum const class org.apache.ibatis.type.JdbcType.Integer
- org.apache.ibatis.type.TypeException: Error setting null for parameter #1 with JdbcType OTHER
- Caused by: org.apache.ibatis.type.TypeException: JDBC requires that the JdbcType must be specified f
- hbase 数据export/import (No enum constant org.apache.hadoop.mapreduce.JobCounter.MB_MILLIS_MAPS)
- hbase 数据export/import (No enum constant org.apache.hadoop.mapreduce.JobCounter.MB_MILLIS_MAPS)
- org.apache.ibatis.binding.BindingException: Type interface dxm.com.mapper.UserMapper is not known to
- org.apache.ibatis.binding.BindingException: Mapper method 'com... has an unsupported return type
- mybatis 报错org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML.
- Mybatis使用之 Caused by: org.apache.ibatis.type.TypeException: Could not resolve type alias‘User’
- tomcat 配置ssl/https 证书问题(一)- No enum constant org.apache.tomcat.util.net.SSLHostConfigCertificate.Typ
- mybatis jdbcType: DATE & TIMESTAMP
- mybatis报org.apache.ibatis.reflection.ReflectionException: Error instantiating null with invalid type
- mybatis 报错: Caused by: org.apache.ibatis.type.TypeException: JDBC requires that the Jdbc
- mybatis Error querying database. Cause: org.apache.ibatis.type.TypeException: Could not set paramet
- mybatis 异常信息 org.apache.ibatis.reflection.ReflectionException: There is no getter for property named
- 矩阵乘法
- capstone训练营2017-12-7
- Matlab读取视频并处理成帧保存
- QT控件大全 十一 QLock
- 解决Eclipse每次修改完代码后需要先Clean代码才能生效问题
- Mybatis mapper层No enum constant org.apache.ibatis.type.JdbcType.date
- Oliver的救援(广搜练习题)
- C++对象指针浅拷贝和深拷贝
- 欢迎使用CSDN-markdown编辑器
- 郑少国收藏的web前端网站
- Erwin 字段加注释
- Tensorflow入门之 前言
- linux上jdk的安装配置
- 【51nod】-1001 数组中和等于K的数对(思维)