在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}
相关推荐
`org.apache.ibatis.annotations.Param`是MyBatis中的一个重要注解,用于处理方法参数映射。 `@Param`注解主要用于SQL查询中的动态参数绑定,尤其是在动态SQL语句中。在MyBatis的映射文件或者Mapper接口中,当我们...
org.apache.ibatis.logging org.apache.ibatis.logging.commons org.apache.ibatis.logging.jdbc org.apache.ibatis.logging.jdk14 org.apache.ibatis.logging.log4j org.apache.ibatis.logging.log4j2 org.apache....
在使用Mybatis框架时,你可能会遇到`org.apache.ibatis.exceptions.PersistenceException`这样的异常。这个异常通常表示在执行数据库查询操作时遇到了问题。本篇将详细分析这个问题并提供解决方法。 ### 问题概述 ...
import static org.apache.ibatis.reflection.ExceptionUtil.unwrapThrowable; import static org.mybatis.spring.SqlSessionUtils.closeSqlSession; import static org.mybatis.spring.SqlSessionUtils....
1、基于springboot+mybatis班级管理系统后端源码.zip 2、该资源包括项目的全部源码,下载可以直接使用! 3、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习借鉴。 ...
Ibatis和Mybatis都是广泛使用的Java ORM(对象关系映射)框架,它们帮助开发者将数据库操作与业务逻辑解耦。本篇文章将探讨从ibatis2.x升级到mybatis3.x的过程,揭示其中的技术变迁和核心变化。 Ibatis2.x是一款轻...
Intellij Idea Mybatis插件主要功能: 提供Mapper接口与配置文件中对应SQL的导航 编辑XML文件时自动补全 根据Mapper接口, 使用快捷键生成xml文件及SQL标签 ResultMap中的property支持自动补全,支持级联...
log4j.logger.org.apache.ibatis=DEBUG log4j.logger.jdbc.sqltiming=DEBUG ``` 上述配置将使得Ibatis的SQL语句及其执行时间被输出到控制台。`%d{ABSOLUTE}`是时间戳,`%5p`是日志级别,`%c{1}`是类名,`%L`是行号...
│ │ │ frame-sourcefiles-org.apache.ibatis.executor.loader.cglib.html │ │ │ frame-sourcefiles-org.apache.ibatis.executor.loader.html │ │ │ frame-sourcefiles- org.apache.ibatis.executor.loader...
PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> ``` 以及 ```xml <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...
>Window->prefenrence->XML->XML Catalog->User Specifiled Entreis->Add->Location(此处是你放dtd文件的位置例如:D:\mybatis\mybatis-3-config.dtd)->Key(如果更改config,此处应该是:-//mybatis.org//DTD ...
org.mybatis.generator.core_1.3.1.201101032122.jar
Manning.iBATIS.in.Action.Jan.2007.eBook-BBL.pdf MyBatis 3 User Guide Simplified Chinese.pdf MyBatis-3.0.3-Migrations.pdf MyBatis-3.0.3-User-Guide.pdf MyBatis-3-Migrations.doc MyBatis-3-Migrations.pdf ...
8. **org.apache.ibatis.type**:内置的数据类型处理器,负责Java类型与JDBC类型之间的转换。 9. **org.apache.ibatis.parsing**:XPath解析器,用于解析XML配置文件。 10. **org.apache.ibatis.logging**:日志系统...
Intellij Idea Mybatis插件主要功能: 提供Mapper接口与配置文件中对应SQL的导航 编辑XML文件时自动补全 根据Mapper接口, 使用快捷键生成xml文件及SQL标签 ResultMap中的property支持自动补全,支持级联...
最近想在最新的Spring5.0中集成ibatis(不是mybatis),发现已经不在支持SqlmapClientTemplate和SqlmapClientFactoryBean,于是搞了这个工具jar来进行支持如下配置 <bean id="sqlMapClient" class="org.spring...