美文网首页
Spring Boot & Mybatis

Spring Boot & Mybatis

作者: 大批 | 来源:发表于2018-08-05 12:40 被阅读38次

    Mybatis简介

    • mybatis是一个比较灵活的orm,简单好用。
    • 官方文档
    • 下面仅仅是介绍一些容易混淆的知识点

    项目依赖(仅仅是java项目)

            <dependency>
                <groupId>org.mybatis</groupId>
                <artifactId>mybatis</artifactId>
                <version>3.3.0</version>
            </dependency>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.38</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-api</artifactId>
                <version>1.7.12</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-log4j12</artifactId>
                <version>1.7.12</version>
            </dependency>
            <dependency>
                <groupId>log4j</groupId>
                <artifactId>log4j</artifactId>
                <version>1.2.17</version>
            </dependency>
    

    Mybatis的mapper,xml 和 接口

    • mapper的实现,一种是使用xml,一种是接口的方式,还有是两种结合起来使用
    • 如果仅仅是使用xml的方式,配置mapper的时候配置的是xml文件的路径,mapper里面的namespace仅仅就是一个区分不同mapper的作用,和java里面的包名没有任何关系
        <mappers>
            <mapper resource="mapper\CountryMapper.xml"/>
        </mappers>
    
    • 如果是使用java接口的方式,这个时候就需要配置包名。如果仅仅是用java就需要用注解来实现各种操作
        <mappers>
            <package name="com.suse.yudapi.mapper"/>
        </mappers>
    
    • java接口和xml的方式,这种方式需要xml的包名和java接口的包名对应。配置的时候是配置包名,mybatis会通过包名去解析对应路径里面的xml,如果没有找到就会报错,这个时候xml里面的namespace也需要和包名对应起来

    枚举处理

    • 使用typeHandlers 这个要配置在typAliases后面
        <typeHandlers>
            <typeHandler handler="org.apache.ibatis.type.EnumOrdinalTypeHandler"
                         javaType="com.suse.yudapi.model.CountryType"/>
        </typeHandlers>
    

    Spring Boot Mybatis

    • 依赖
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.mybatis.spring.boot</groupId>
                <artifactId>mybatis-spring-boot-starter</artifactId>
                <version>1.3.2</version>
            </dependency>
    
    • 配置(由 xml 变成了 java 配置),配置类是org.mybatis.spring.boot.autoconfigure.MybatisProperties。下面列出常用的配置
    mybatis.mapperLocations="classpath:mapper/*.xml"
    mybatis.typeAliasesPackage="com.suse.model"
    mybatis.typeHandlersPackage=""
    mybatis.configuration.mapUnderscoreToCamelCase=""
    
    • mapper接口直接使用 @mapper 注解进行配置
    • 开启扫描mapper的配置 @MapperScan

     
    End

    [3]  spring boot JPA
    [2]  ...

    相关文章

      网友评论

          本文标题:Spring Boot & Mybatis

          本文链接:https://www.haomeiwen.com/subject/lgxkvftx.html