`
wx1568847608
  • 浏览: 12241 次
文章分类
社区版块
存档分类
最新评论

mybatis中的jdbcType

 
阅读更多

在oracle中数据库中需要指定,因为,不指定,像Integer,Long,VArchar,等等都可以为null,这样插入null,mybatis就不能判断是什么数据类型,因为mybatis框架需要转化这些数据类型同数据库类型一致然后插入数据库,

那么需要在每个插入数据库字段的后面加上jdbcType

  1. <insert id="save"

  2. parameterType="com.tarena.entity.Cost">

  3. insert into cost values(

  4.  

    #{roleId},//这个就不用了,因为后台service中会手动设置uuid,不会为null,后端已经设置了,就是自己可控的,前端自己不可控,自己可控的并且设置了值,就不要判断,例如下面,下面的state值也是已经在service中设置好了,那么就不用写jdbcType了
    <update id="updateState" parameterType="map" >
        update CONTRACT_C SET
        STATE=#{state}
         where CONTRACT_ID in
         <foreach collection="ids"  item="id" open="(" close=")" separator=",">
         #{id}
         </foreach>
  5. cost_seq.nextval,

  6. #{name,jdbcType=VARCHAR},

  7. #{base_duration,jdbcType=INTEGER},

  8. #{base_cost,jdbcType=DOUBLE},

  9. #{unit_cost,jdbcType=DOUBLE},

  10. #{status,jdbcType=CHAR},

  11. #{descr,jdbcType=VARCHAR},

  12. #{creatime,jdbcType=TIMESTAMP},

  13. #{startime,jdbcType=TIMESTAMP},

  14. #{cost_type,jdbcType=CHAR}

  15. )

  16. </insert>jdbcType 时间类型当jdbcType = DATE 时, 只传入了 年月日

  17. jdbcType = TIMESTAMP ,  年月日+ 时分秒

那么如何插入null呢

第一步:

insert into table_name(_id,username) values(_id = #{_id,jdbcType=INTEGER},username=#{username,jdbcType=VARCHAR})

加上jdbcType=”数据类型“就可以了。

第二步:其实还需要在mybatis的配置文件中写入:

<settings>
<setting name="jdbcTypeForNull" value="NULL" />
</settings>

 

转载于:https://my.oschina.net/u/3043570/blog/2243874

分享到:
评论

相关推荐

    mybatis常用jdbcType数据类型.txt

    mybatis常用jdbcType数据类型.txt mybatis常用jdbcType数据类型.txt

    经过修改源码的mybatis逆向工程生成器(不生成jdbcType)

    经过修改源码的mybatis逆向工程生成器(不生成jdbcType)

    struts2+mybatis解决longblob字段问题

    struts2+mybatis解决longblob字段问题,存读取并下载longblob字段

    MyBatis常用的jdbcType数据类型

    主要介绍了MyBatis常用的jdbcType数据类型的相关资料,需要的朋友可以参考下

    mybatis安装包+依赖包+常用配置文件

    mybatis安装包+依赖包+常用配置文件+4-mybatis generator的插件+EHcache+MyBatis 通过包含的jdbcType类型+测试数据脚本

    mybatis-generator(mybatis生成工具修改版)

    6、XML中,原先会对每字段都写上jdbcType,现在去掉了,减少代码量。 7、XML中,update语句修改为使用判断字段是否为空进行更新,而不是原先的每个字段都更新。 8、Service和Dao层,自动添加Spring注解。 9、将原先...

    Mybatis的映射(sql编写).md

    -- 对于的类型 jdbcType --&gt; &lt;id column="ID" property="id" jdbcType="INTEGER" /&gt; &lt;result column="NoticeText" property="noticeText" jdbcType="VARCHAR"/&gt; &lt;result column="EndTime" property="endTime" ...

    Mybatis工具类JdbcTypeInterceptor运行时自动添加jdbcType属性

    今天小编就为大家分享一篇关于Mybatis工具类JdbcTypeInterceptor运行时自动添加jdbcType属性,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

    mybatis逆向生成器

    使用驱动连接数据库,自动生成dao层,和service层,好用快捷,欢迎下载。

    mybatis 配置

    在 MyBatis 配置文件中,我们需要在 mappers 标签中引用这些 SQL 映射 XML 文件,例如: ``` ``` SQL 映射 XML 文件的元素 在 SQL 映射 XML 文件中,有多种元素可以被使用。下面是一些初级的元素: * ...

    mybatis-generator相关的所有文件

    该资源包含了 使用generator自动生成mybatis相关的mapper文件及映射的xml文件、数据库表对应的实体类 所需要的所有文件,两个jar包(mybatis-generator-core-1.3.5.jar,mysql-connector-java-5.1.15.jar),...

    SpringBoot+mybatis基于注解式增删改查框架源码程序

    SpringBoot+mybatis基于注解式增删改查框架源码程序, @Insert("INSERT INTO USER(nick_name, user_code) VALUES(#{nickName}, #{userCode})") int insertParam(@Param("nickName") String nickName, @Param(...

    使用Mybatis-Generator自动生成Dao、Model、Mapping相关文件

    使用Mybatis-Generator自动生成Dao、Model、...Mybatis属于半自动ORM,在使用这个框架中,工作量最大的就是书写Mapping的映射文件,由于手动书写很容易出错,我们可以利用Mybatis-Generator来帮我们自动生成这些文件。

    mybatis自动生成工具修改版1.3.7源码--maven项目可直接运行

    mybatis-1-3-7自动生成工具修改版源码--maven项目 1、实体类添加注释。 2、mapper.xml去掉jdbcType类型转换 3、修改文件名mapper.java修改为IDAO.java 4、提取BaseDao,修改dao层接口自动继承。考虑是否生成Example类...

    spring-mybatis-oracle-performance-issue

    有关定时示例以及何时提供jdbcType与何时不在xml中之间的计时差异,请参见此项目中的DefaultTimerService。 表规范可以在找到。 性能降级位置 运行OraclePreparedStatement#executeLargeBatch时,大多数处理似乎都...

    MabatisPlusGenerator.java

    mybatis-plus-generator自动生成xml,dao,entity,service,controller。注释清楚,下载执行。需要添加下面依赖 &lt;groupId&gt;com.baomidou&lt;/groupId&gt; &lt;artifactId&gt;mybatis-plus-boot-starter &lt;version&gt;2.3 ...

    Mysql解决数据库N+1查询问题

    在orm框架中,比如hibernate和mybatis都可以设置关联对象,比如user对象关联dept 假如查询出n个user,那么需要做n次查询dept,查询user是一次select,查询user关联的 dept,是n次,所以是n+1问题,其实叫1+n更为...

    java查看方法源码-mybatipse:Eclipse插件添加对MyBatisSQLMapper框架的支持

    java查看方法源码MyBatipse:MyBatis 的 Eclipse 插件 是一个流行的 SQL Mapper 框架。 MyBatipse是一个 ...javaType、jdbcType、typeHandler resultMap/collection/association 中的结果元素:为父 java 类属

    前端-后端java的Util类的工具类

    ├─MyBatis-zh │ │ clirr-report.html │ │ configuration.html │ │ cpd.html │ │ cpd.xml │ │ dependencies.html │ │ dependency-info.html │ │ distribution-management.html │ │ dynamic-sql....

Global site tag (gtag.js) - Google Analytics