美文网首页
Mark3 项目记录---0x02 整合mybatis

Mark3 项目记录---0x02 整合mybatis

作者: 量产型炮灰工程师 | 来源:发表于2017-06-09 17:26 被阅读0次

    其实,只要在创建工程那里,找到mybatis这个选项,打上勾,或者说,后续在porm.xml,怼上以下的maven依赖,然后,再在Application运行类上,再加上一个注解,用于扫描mapper包,整配置就结束了。
    简单又粗暴,除此以外,没有其他言语可以形容了


    • Mark3Application.java
    //basePackages 是mapper所在的包的路径
    @MapperScan(basePackages = "com.m1.dao.mapper")
    @SpringBootApplication
    public class Mark3Application {
        public static void main(String[] args) {
            SpringApplication.run(Mark3Application.class, args);
        }
    }
    
    • porm.xml
    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>1.3.0</version>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency>
    
    • application.properties 添加以下两行
    # 实体类映射路径
    mybatis.type-aliases-package=com.m1.common.bean
    #mapper的xml路径
    mybatis.mapper-locations=classpath:mapper/*.xml
    

    生成mapper和xml

    关于这一块,有三种方式

    • 手撕xml
      顾名思义,初期学习或者特殊需求,可以这么做。手写接口与传入参数,写sql,可以熟悉mybatis最核心的精髓,就是多了一点if,for等语句,trim等字符拼接,以及数据类型映射;按业务需求灵活控制SQL。

    但是,有一位同事在做一个新的模块,大约涉及到了20多张表,然后他哭了....
    ----每张表CRUD四个功能,有部分特别的业务要另写sql

    • 生成器

    机械化的东西,当然是要留给机器去做-------汤姆.猫

    使用自动生成工具还有另一个好处,除了mapper,xml,实体类外,它会生成一个beanExample的类,用于查询条件查询,但是,最常用的分页查询却没有。所以用这个来解决 mybatis分页插件

    到这,springboot对原生mybatis3的操作就结束了。

    额外加料,连接池

    连接池有很多种,比较流行的有c3p0,dbcp,BoneCP,druid等,我必须选druid啊,因为熟悉


    官方springBoot 配置点这里

    但我配置的时候,遇到一个问题,阿里官方的1.0.29-SNAPSHOT这个版本的druid-spring-boot-starter maven中央仓库依赖无法下载,后面我直接在maven仓库,再从新找了一个

        <!-- https://mvnrepository.com/artifact/com.cuisongliu/druid-spring-boot-starter -->
            <dependency>
                <groupId>com.cuisongliu</groupId>
                <artifactId>druid-spring-boot-starter</artifactId>
                <version>1.0.31.05</version>
            </dependency>
    

    随后按照需求,自定义配置application.properties,参数什么的,上面的链接就有说明

    单元测试如下:

    @RunWith(SpringRunner.class)
    @SpringBootTest
    public class Mark3ApplicationTests {
        @Autowired
        private TMemberMapper memberMapper;
    
        @Test
        public void TestQueryOneMember() {
            TMember member = memberMapper.selectByPrimaryKey(2004521637939200L);
            Assert.assertEquals(new Long(2004521637939200L), member.getMemberId());
            System.out.println(member);
        }
    }
    

    项目地址
    代码下载

    相关文章

      网友评论

          本文标题:Mark3 项目记录---0x02 整合mybatis

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