`

java BigInteger映射到数据库,mybatis3.1.1bug

 
阅读更多

因为需要一个32位的主键存到数据库以供他用,但是在写mybatis映射的文件上就遇到了问题。

 

mybatis文档说明:BigInteger类型映射BIGINT

 

javaType=java.math.BigInteger  jdbcType=BIGINT,也就相当于java中存的BigInteger类型,显示的转换为BIGINT

 

写到数据库,但是在插入的时候mybatis把BigInteger转换为Long,而不是遵循声明的BIGINT,试了各种类型,包括

 

Numberic,Integer,都报一样的错误,总是转为Long,但是程序中根本不存在Long的类型,最后一同事帮我看了很久后,换

 

种方式试试,把BigInteger换成String试试,结果还真好使了,然后又试了BigDecimal,也没问题,所以这个可能是

 

mybatis的bug,现在的版本是:mybatis3.1.1。

 

其实在mybatis中不显示的声明类型,他也会自动的去匹配,根据java的类型的去匹配对应的数据库的类型,如果类型不匹配

 

或者数据不对,就直接报错了。

 

 

分享到:
评论

相关推荐

    JAVABigInteger包.pdf

    BigInteger 包是 Java 语言中用于处理大整数的类库。该类库提供了多种构造方法和运算方法来处理大整数。 构造方法 BigInteger 类提供了多种构造方法来创建 BigInteger 对象。这些方法包括: * `BigInteger(byte[]...

    RSA.rar_BigInteger_RSA BigInteger_RSA java biginteger_RSA 类 java

    在Java中,我们可以使用`java.math.BigInteger`类来处理大整数,这在实现RSA算法时非常关键,因为加密过程中涉及的数字通常超过了普通整型变量的范围。以下是关于`BigInteger`类以及如何在Java中实现RSA加解密的详细...

    基于Java BigInteger类的大整数运算应用.pdf

    基于Java BigInteger类的大整数运算应用 大整数运算是计算机科学和数学中一个重要的研究方向,许多应用场景都需要高精度的计算,例如精确到100位的小数的黄金分割系数计算、大素数问题、梅森素数问题等。Java提供的...

    javabiginteger源码-my-springboot-learning:我的springbootlearning

    java biginteger 源码 Spring Boot HTTP over JSON 的错误码异常处理 ######异常统一处理的使用场景 #####Json数据序列化和反序列化的问题:(在众包质检项目遇到了这个问题?目前还没有比较好的方法) json序列化的...

    java练习_大数运算_BigInteger.pdf

    Java大数运算 BigInteger 类的方法调用 正如我们在 Java 中处理大数运算时,需要使用 BigInteger 类来实现,这是因为 Java 的基本数据类型无法存储非常大的数字。BigInteger 类提供了几个重要的方法来进行大数运算...

    poj1001java biginteger

    用java的biginteger实现的poj1001,比较简单的方法

    java biginteger类

    ### Java BigInteger 类详解 #### 一、概述 `BigInteger` 类位于 `java.math` 匹配包中,用于表示和处理具有任意精度的整数。当整数的大小超出标准整型(例如 `int` 或 `long`)所能表示的范围时,`BigInteger` ...

    Java中BigInteger方法总结

    ### Java中的BigInteger方法详解 #### 一、引言 在Java中处理大整数运算时,`BigInteger` 类提供了一种高效且灵活的方式。与基本数据类型如 `int` 和 `long` 不同,`BigInteger` 可以表示任意大小的整数,只要不...

    java-BigInteger-BigDecimal类源码

    在Java编程语言中,`BigInteger`和`BigDecimal`是两个重要的类,它们分别用于处理大整数和高精度浮点数。这两个类位于`java.math`包下,为开发者提供了超越基本数据类型(如int、long和double)的计算能力。在深入...

    javabiginteger源码-paillier:Paillier算法的Java实现。这是为数不多的保留加性同态特性的已知系统之一。JCAP

    biginteger源码笔记 The Java:trade_mark: Cryptography Architecture requires that Java security providers be code-signed (using a code-signing certificate issued by Oracle Corporation). OpenJDK does not...

    javabiginteger源码-SoftwareEngineerChallenge:软件工程师挑战赛

    java biginteger源码软件工程师挑战 编码任务: 在面向对象和函数式编程中,不可变对象是指在创建后状态无法修改的对象。 这与可以在创建后修改的可变对象形成对比。 类应该是不可变的,除非有很好的理由让它们可变...

    javabiginteger源码-nano:一个轻量级的安卓网络服务客户端框架

    biginteger源码##免责声明 这个图书馆还在建设中。 Beta 测试人员非常受欢迎。 纳米 一个针对Android平台的轻量级Web Service客户端框架 ##功能亮点 支持WSDL驱动开发,提供工具从WSDL自动生成强类型代理。 支持 ...

    javabiginteger源码-gcdc-asn1:ASN.1数据类型和UPER编码器/解码器

    java biginteger源码ASN.1 数据类型 用来自规范的信息来扩充 Java 类的 Java 注释。 这些注释以后可以被像 . 目录: 地位 数据类型足以处理 . 目前还没有编译器,因此必须手动创建和添加 Java 类和注释。 支持的 ASN...

    BigInteger:为Java实现BigInteger

    在Java编程语言中,`BigInteger`类是用于处理大整数的一种重要工具。它属于`java.math`包,专门设计来处理超过`long`类型所能表示的最大范围的整数。当我们需要进行大整数的算术运算,如加法、减法、乘法、除法以及...

    Java中BigInteger.docx

    在Java编程语言中,`BigInteger` 类是用来处理大整数的,它支持任意精度的整数运算。这个类是 `java.math` 包的一部分,它提供了比 `int` 和 `long` 更大的范围,可以用来处理超过64位的整数值。在处理大数据量的...

    javabiginteger源码-Java:Java

    biginteger 源码 Java ##阅读JDK文档及源代码并简要回答以下问题。 注:JDKAPI文档( JDK的源代码(一般在 C:\Program Files\Java\jdk1.8.0\src.zip)中 ##-----java.lang.Object类----- 其equals与==有没有差别? ...

    BigInteger源代码

    BigInteger的源代码,有英文注释

    Java大数字运算之BigInteger <font color=red>原创</font>

    Java中的BigInteger类是用于处理大整数运算的重要工具,它弥补了Integer类在处理超过int类型范围(2^31-1)数值时的局限性。BigInteger类支持任意精度的整数运算,这意味着它可以准确地表示和计算非常大的数值,无论...

    debug:eclipse连接mysql数据库时报错java.math.BigInteger cannot be .pdf

    总之,解决“java.math.BigInteger cannot be”错误的关键在于匹配JDBC驱动与MySQL数据库的版本,并正确地将新的驱动添加到Eclipse项目中。遵循上述步骤,可以有效地避免这类问题,确保你的应用程序能顺利地与数据库...

    javabiginteger源码-read-jdk-source:阅读jdk

    biginteger 源码 阅读JDK源码项目 2020.07.14创建该项目,目的是想阅读jdk1.8源码提高自己的水平。 阅读顺序 来源 JDK的项目历经了十几个大版本,算上开源社区的贡献,经手的人可能也达到上千人。对于这种庞大的项目...

Global site tag (gtag.js) - Google Analytics