異常SpringBoot2.0統合tk.mybatis

著作権:メッセージを残してください、私は問題の賞賛与えるよう--------------------------------随時更新されます、、、共有しているため、とても便利なので、幸せな学習理由!重版はハハ、ソースを明記してください!https://blog.csdn.net/Appleyk/article/details/89386354

(シンプルスタンダード版)は次のようにポンポン構成は次のとおりです。

 

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.4.RELEASE</version>
    </parent>

    <properties>
        <java.version>1.8</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <tk.mybatis.version>1.1.5</tk.mybatis.version>
        <pagehelper.version>1.2.3</pagehelper.version>
    </properties>

    <dependencies>

        <dependency>
            <groupId>tk.mybatis</groupId>
            <artifactId>mapper-spring-boot-starter</artifactId>
            <version>${tk.mybatis.version}</version>
        </dependency>

        <!-- pageHelper -->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>${pagehelper.version}</version>
        </dependency>
    </dependencies>

 

 

次のように報告された異常を起動します。

 

java.lang.StringIndexOutOfBoundsException:によって引き起こされる範囲外の文字列インデックス:-1

 

Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
	at java.lang.AbstractStringBuilder.substring(AbstractStringBuilder.java:908)
	at java.lang.StringBuilder.substring(StringBuilder.java:76)
	at tk.mybatis.mapper.mapperhelper.SqlHelper.getAllColumns(SqlHelper.java:247)
	at tk.mybatis.mapper.mapperhelper.SqlHelper.exampleSelectColumns(SqlHelper.java:534)
	at tk.mybatis.mapper.provider.ExampleProvider.selectByExample(ExampleProvider.java:96)
	at tk.mybatis.mapper.provider.ExampleProvider.selectByExampleAndRowBounds(ExampleProvider.java:111)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at tk.mybatis.mapper.mapperhelper.MapperTemplate.setSqlSource(MapperTemplate.java:246)
	... 29 common frames omitted

 

 

そこMapperScanはTKにノート何ということで、元のデータエンティティクラス定義はによって引き起こされる任意のプロパティを定義しないので、長い時間を探して、機能しません、問題の互換性のないバージョンがあると言われています。

 

 

スキャン時間でXMLマッパーの結果は、対応するエンティティクラスを見つけ、そしてフィールド(列)がでないことがわかったので、彼らは例外がスローされます

 

ブロガーなぜこのような状況はありますか?

 

私は、時間枠を取る、私は唯一の製品設計の観点で定義されてしまうので、良いコントローラ、サービスおよびダオ層、具体的なコンテンツの開発者で満たされているエンティティダオ層と、が登場している、棚をセットアップし、なく稼働して恥ずかしい状況は、解決策があり、エンティティのエンティティ・クラスが空でない、ただIDで意味することは与えることができます:

 

 

 

おすすめ

転載: blog.csdn.net/Appleyk/article/details/89386354