mybatis / spring-boot-starter

MyBatis integration with Spring Boot
Apache License 2.0
4.13k stars 1.79k forks source link

Not Support LocalDate in Kotlin Project #378

Closed Yuzer-Ly closed 5 years ago

Yuzer-Ly commented 5 years ago

when i upgrade mybatis-spring-boot-starter to 2.1.0 , I got

org.springframework.dao.InvalidDataAccessApiUsageException: Error attempting to get column 'start_date' from result set. Cause: java.sql.SQLFeatureNotSupportedException

or

java.sql.SQLDataException: Can't bind object of class java.time.LocalDate

my build.gradle.kts is

plugins {
    id("org.springframework.boot") version "2.1.7.RELEASE"
    id("io.spring.dependency-management") version "1.0.8.RELEASE"
    id("com.google.cloud.tools.jib") version "1.4.0"
    kotlin("plugin.spring") version "1.3.41"
}

java.sourceCompatibility = JavaVersion.VERSION_1_8

configurations {
    compileOnly {
        extendsFrom(configurations.annotationProcessor.get())
    }
}

dependencies {
    //spring boot相关
    implementation("org.springframework.boot:spring-boot-starter-actuator")
    implementation("org.springframework.boot:spring-boot-starter-amqp")
    implementation("org.springframework.boot:spring-boot-starter-data-redis")
    implementation("org.springframework.boot:spring-boot-starter-web")

    //spring cloud相关
    implementation("org.springframework.cloud:spring-cloud-starter-netflix-eureka-client")
    implementation("org.springframework.cloud:spring-cloud-starter-openfeign")
    implementation("org.springframework.cloud:spring-cloud-starter-sleuth")
    implementation("org.springframework.cloud:spring-cloud-starter-zipkin")

    //其他
    implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
    implementation("org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.2")
    implementation("ru.yandex.clickhouse:clickhouse-jdbc:0.1.41")
    implementation("com.github.pagehelper:pagehelper-spring-boot-starter:1.2.5")
    implementation("com.alibaba:druid-spring-boot-starter:1.1.18")
    implementation("com.alibaba:fastjson:1.2.59")
    implementation("org.apache.commons:commons-lang3")
    implementation("net.logstash.logback:logstash-logback-encoder:5.2")
    implementation("ch.hsr:geohash:1.3.0")
//    implementation("org.apache.hadoop:hadoop-common:2.8.0")
    implementation("commons-net:commons-net:3.3")
    implementation("org.quartz-scheduler:quartz:2.2.1")
    implementation("org.quartz-scheduler:quartz-jobs:2.2.1")
    implementation("com.vividsolutions:jts:1.13")
    implementation("izone.jiguang.com:base:1.1.3")
    implementation("cn.jpush.dp:dp-ods-client:1.1.1")
    implementation("cn.jpush:jcache-spring-data-redis-client:1.1.0")
    implementation(project(":service-util-model"))

    implementation("io.jsonwebtoken:jjwt-api:0.10.5")
    runtimeOnly("io.jsonwebtoken:jjwt-jackson:0.10.5")
//    implementation("cn.jpush:jcache-spring-data-redis-client:1.1.0")

    implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
    implementation("org.jetbrains.kotlin:kotlin-reflect")
    implementation("javax.xml.bind:jaxb-api:2.3.1")
    implementation("com.sun.xml.bind:jaxb-impl:2.3.1")
    implementation("com.sun.xml.bind:jaxb-core:2.3.0.1")
    implementation("javax.activation:activation:1.1.1")

    compileOnly("org.projectlombok:lombok")
//    compileOnly("javax.servlet:servlet-api")
    runtimeOnly("mysql:mysql-connector-java")
    annotationProcessor("org.projectlombok:lombok")
    testImplementation("org.springframework.boot:spring-boot-starter-test")

}

dependencyManagement {
    imports {
        mavenBom("org.springframework.cloud:spring-cloud-dependencies:${property("springCloudVersion")}")
    }
}

and when i turn back to 1.3.2. it can be worked

harawata commented 5 years ago

Hi @LyStormrage ,

This may be a duplicate of https://github.com/mybatis/mybatis-3/issues/1516

As there has been some improvement in Druid 1.1.19, try adding it to the dependency.

implementation("com.alibaba:druid:1.1.19")

If it still does not work, you should report it to the druid project.

Yuzer-Ly commented 5 years ago

@kazuki43zoo it still does not work. Maybe I need to wait the druid-spring-boot-starter:1.1.19 . Anyway, thanks for your help~