`
dyllove98
  • 浏览: 1405359 次
  • 性别: Icon_minigender_1
  • 来自: 济南
博客专栏
73a48ce3-d397-3b94-9f5d-49eb2ab017ab
Eclipse Rcp/R...
浏览量:39058
4322ac12-0ba9-3ac3-a3cf-b2f587fdfd3f
项目管理checkList...
浏览量:80060
4fb6ad91-52a6-307a-9e4f-816b4a7ce416
哲理故事与管理之道
浏览量:133167
社区版块
存档分类
最新评论

mybatis 插入null 时需要指定jdbcType

 
阅读更多

MyBatis 插入空值时,需要指定JdbcType 
mybatis insert空值报空值异常,但是在pl/sql不会提示错误,主要原因是mybatis无法进行转换

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
<insert id="insertInstrument" parameterType="com.labway.oa.po.Instruments">
    insert into
    instruments
    (group_name,
    name,
    description,
    on_line,
    operator,
    x_sbxh,
    serial_no,
    x_lc,
    x_sbjd,
    vendor,
    <!-- x_sbsx, -->
    location,
    changed_on,
    changed_by,
    removed,
    low_threshold,
    high_threshold,
    stability_delta,
    stability_number,
    port_number,
    discard_time,
    size_limit,
    time_out,
    polling_time,
    needs_calibration,
    needs_pm,
    holds_samples,
    include_subdirs,
    debug,
    store_in_db_file,
    db_file_prompt,
    x_jlsx,
    x_funcheck_status,
    x_timecheck_status,
    x_name,
    x_description,
    x_funcheck_date,
    x_timecheck_date,
    pm_date,
    x_pm_status,
    x_status,
    x_group_name
 
 
    ) values(
    #{group_name,jdbcType=VARCHAR},
    #{name,jdbcType=VARCHAR},
    #{description,jdbcType=VARCHAR},
    #{on_line,jdbcType=VARCHAR},
    #{operator,jdbcType=VARCHAR},
    #{x_sbxh,jdbcType=VARCHAR},
    #{serial_no,jdbcType=VARCHAR},
    #{x_lc,jdbcType=VARCHAR},
    #{x_sbjd,jdbcType=VARCHAR},
    #{vendor,jdbcType=VARCHAR},
    <!-- #{x_sbsx}, -->
    #{location,jdbcType=VARCHAR},
    #{changed_on,javaType=String,jdbcType=DATE,typeHandler=com.labway.portal.handler.LwDateTypeHandler},
    #{changed_by,jdbcType=VARCHAR},
    'F',
    '0',
    '0',
    '0',
    '0',
    '0',
    '0',
    '0',
    '0',
    '0',
    'F',
    'F',
    'F',
    'F',
    'F',
    'F',
    'F',
    'T',
    'F',
    'F',
    #{name,jdbcType=VARCHAR},
    #{description,jdbcType=VARCHAR},
    #{x_funcheck_date,javaType=String,jdbcType=DATE,typeHandler=com.labway.portal.handler.LwDateTypeHandler},
    #{x_timecheck_date,javaType=String,jdbcType=DATE,typeHandler=com.labway.portal.handler.LwDateTypeHandler},
    #{pm_date,javaType=String,jdbcType=DATE,typeHandler=com.labway.portal.handler.LwDateTypeHandler},
    #{x_pm_status,jdbcType=VARCHAR},
    #{x_status,jdbcType=VARCHAR},
    #{x_group_name,jdbcType=VARCHAR}
    )
</insert>

 

3
0
分享到:
评论

相关推荐

    mybatis,对null无法处理的原因.pdf

    这样,MyBatis在处理null值时,就会使用数据库能识别的`NULL`类型,从而避免因JDBCType=OTHER导致的不兼容问题。 **解决方案二:在参数中指定jdbcType** 除了全局配置之外,我们还可以在具体SQL语句的占位符中指定...

    详解MyBatis直接执行SQL查询及数据批量插入

    在使用时,需要注意SQL字符串的编写规范,理解#{}和${}的区别,以及合理利用`&lt;foreach&gt;`标签进行批量操作。这使得MyBatis不仅简化了数据库操作,也提升了开发效率。在实际应用中,应结合业务需求,合理选择查询方式...

    mybatis 对clob类型转换

    当你需要将一个字符串或者Reader对象插入到CLOB字段时,MyBatis默认可能无法正确处理。此时,你需要自定义一个TypeHandler来处理这种转换。创建一个实现`org.apache.ibatis.type.TypeHandler`接口的类,重写`...

    mybatis 报空值异常

    这类问题通常出现在尝试将空值(`null`)插入数据库表中时,尤其是在未指定 JDBC 类型的情况下更为常见。本文将详细介绍这种异常的原因,并提供相应的解决方案。 #### 异常原因分析 当 MyBatis 在执行 SQL 语句时...

    mybatis中操作json类型数据(csdn)————程序.pdf

    在实际应用中,你需要根据具体的需求和Java对象的结构,定义一个合适的TypeHandler,然后在MyBatis的Mapper接口或XML配置文件中引用它,这样MyBatis在执行SQL时就能正确地处理JSON类型的字段。 总结来说,MyBatis...

    Mybatis_day2.pdf

    同样,在插入数据时,也要注意处理可能为空的字段,使用适当的`jdbcType`以允许NULL值。 2. JDBC Type属性: MyBatis支持多种JDBC Type,如VARCHAR、INT、DATE等。选择合适的JDBC Type取决于你所使用的数据库和...

    36道面试常问的MyBatis面试题!.zip

    可以使用nullValue属性指定某个字段为NULL时的默认值。 34. **MyBatis的中的discriminator标签如何使用?** discriminator用于根据某个字段值的不同,选择不同的ResultMap进行映射。 35. **MyBatis如何处理复杂...

    MyBatis3 用户指南 附JavaDB实例 pdf

    ### MyBatis3 用户指南知识点概述 #### 一、MyBatis3简介 - **定义**:MyBatis是一款优秀的支持自定义SQL、存储过程以及高级映射的持久层框架。它通过消除几乎所有的JDBC代码及手动设置参数和获取结果集的操作,...

    spring-mybatis-oracle-performance-issue

    通过Spring MyBatis事​​务或通过MyBatis使用ExecutorType.BATCH WIHOUT在xml中为可为空的列指定jdbcType插入Oracle数据库时,性能可能会严重下降并降低200倍甚至更多。 即使在SqlSessionFactory创建过程中将...

    MyBatis3--开发指南(附JavaDB实例)

    ### MyBatis3 开发指南知识点详解 #### MyBatis3 概述 - **定义**:MyBatis是一款优秀的支持自定义SQL、存储过程以及高级映射的持久层框架。它极大地简化了JDBC代码的编写,几乎消除了所有JDBC相关的编码工作,如...

    mybatis中使用oracle关键字出错的解决方法

    然而,在使用MyBatis时,可能会遇到一些问题,例如使用Oracle关键字时出现错误。在本文中,我们将讨论如何解决MyBatis中使用Oracle关键字出错的问题。 问题描述 在MyBatis中,如果使用的字段是Oracle的关键字,可能...

    mybatis中实现枚举自动转换方法详解

    最后,为了让MyBatis知道使用这个自定义类型处理器,我们需要在Mapper的XML配置文件中为对应的枚举字段指定`typeHandler`属性,如下所示: ```xml &lt;id property="id" column="id" jdbcType="INTEGER"/&gt; ...

    Mybatis调用视图和存储过程的方法

    MyBatis,作为一款强大的持久层框架,提供了一系列高级特性,包括对普通SQL查询、视图查询以及存储过程的调用。本篇文章将详细介绍如何在MyBatis中调用视图和存储过程。 一、调用视图 视图在数据库中是一种虚拟表...

    Spring Boot整合mybatis使用注解实现动态Sql、参数传递等常用操作(实现方法)

    注意,`#{}`中的参数与传递的参数名保持一致,`jdbcType`用于指定字段的数据类型。 2. **@Insert注解** `@Insert`注解用于插入数据。可以将实体类作为参数,Mybatis会自动解析属性到对应的列。例如: ```java @...

    MyBatis-3-User-Guide-Simplified-Chinese

    - **SqlSession**: 每次操作数据库时都需要一个 `SqlSession` 实例。对于每次数据库事务,最好只使用一个 `SqlSession` 实例,并且在事务完成后立即关闭。 #### 5. XML 映射配置文件 MyBatis 使用 XML 配置文件来...

    mybatis注解与xml常用语句汇总

    这里`@One`指定了通过uid查询User的DAO方法,`fetchType.LAZY`表示延迟加载,即只有在需要时才会去查询关联的对象。 3. **一对多注解**: 一对多关系通常通过`@Results`和`@Many`注解实现。在XML配置文件中,可以...

    Mybatis单个参数的if判断报异常There is no getter for property named 'xxx' in 'class java.lang.Integer'的解决方案

    当`langId`有值时,MyBatis会正常地插入对应的条件语句。 此外,对于`jdbcType`的使用也是很重要的。在MyBatis中,`jdbcType`用于指定Java类型对应的数据库列类型,这有助于确保数据类型的一致性,避免在数据库交互...

    spring+ibatis集成文档

    而iBatis(现称为MyBatis)则以其简洁的SQL映射功能而闻名。将两者结合使用可以实现更为高效且易于维护的应用程序。 #### 二、环境搭建与配置 ##### 2.1 数据库准备 以MySQL为例,创建一个简单的表结构用于演示:...

Global site tag (gtag.js) - Google Analytics