3分钟看懂必须掌握的Mybatis核心知识,教你自动生成Mapper

1.mybatis基本结构

  mybatis是目前很流行的一个ORM框架,它帮助开发者实现数据库记录和POJO对象之间的映射,简化了在开发过程对数据库的操作。

  mybatis核心组件有以下几个:

  • SqlSessionFactoryBuilder(构造器):它会根据配置信息或者代码来生成SqlSessionFactory(工厂接口)
  • SqlSessionFactory:依靠工厂来生成SqlSession(会话)
  • SqlSession:是一个既可以发送SQL去执行并返回结果,也可以获取Mapper的接口。
  • SQL Mapper:是由Java接口和XML文件构成,需要给出对应的SQL和映射规则。

Java架构学习视频和大厂项目底层知识点,需要的同学欢迎私信我发给你~一起学习进步!

2.mybatis xml文件主要标签

  • select 查询语句,传递多个参数时可以使用"@Param"注解,也可以使用java bean
  • insert 插入语句
  • update 更新语句
  • delete 删除语句
  • sql 允许定义一部分SQL然后在各个地方应用
  • resultMap 用于描述从数据库结果集来加载对象

3.mybatis缓存

  mybatis支持一级缓存和二级缓存,在没有配置的默认情况下,只开启一级缓存。

  • 一级缓存:在参数和SQL完全一致的情况下,使用同一个SqlSession对象,多次SQL查询,往往只会执行一个SQL,后面的若干次查询都会从缓存中取数据(在缓存没超时的情况下)。
  • 二级缓存:在使用不同的SqlSession对象时,因为不同的SqlSession是相互隔离的,所以即使用相同的mapper、参数和方法,它还是hui会再次发送SQL到数据库执行。而二级缓存可以解决这个问题,二级缓存是在SqlSessionFactory层面共享的。

4.mybatis自动生成mapper

  • 安装idea mybatis插件,插件需要破解
  • 按照实际的表名,修改下面的示例生成文件

示例生成文件:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE generatorConfiguration PUBLIC
        "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" >
<generatorConfiguration>

    <!-- !!!! Driver Class Path !!!! -->
    <classPathEntry location="C:\Users\zhangfangyu1\.m2\repository\mysql\mysql-connector-java\5.1.29\mysql-connector-java-5.1.29.jar"/>

    <context id="context" targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressAllComments" value="false"/>
            <property name="suppressDate" value="true"/>
        </commentGenerator>

        <!-- !!!! Database Configurations !!!! -->
        <jdbcConnection driver connectionURL="jdbc:mysql://10.122.174.131:3306/activitypromotion" userId="activity_dev" password="uIneXoLlWl0l0eE9MCq4"/>

        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>

        <!-- !!!! Model Configurations !!!! -->
        <javaModelGenerator targetPackage="com.netease.kaola.pop.core.pojo" targetProject="src/main">
            <property name="enableSubPackages" value="false"/>
            <property name="trimStrings" value="false"/>
        </javaModelGenerator>

        <!-- !!!! Mapper XML Configurations !!!! -->
        <sqlMapGenerator targetPackage="mybatis" targetProject="src/main">
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>

        <!-- !!!! Mapper Interface Configurations !!!! -->
        <javaClientGenerator targetPackage="com.netease.kaola.pop.core.dao" targetProject="src/main" type="XMLMAPPER">
            <property name="enableSubPackages" value="false"/>
        </javaClientGenerator>

        <!-- !!!! Table Configurations !!!! -->
        <table tableName="tb_pop_oplog" domainObjectName="PopOperateLog" enableCountByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
               enableUpdateByExample="false"/>
    </context>
</generatorConfiguration>

 

有任何问题欢迎留言交流哦~

整理总结不易,如果觉得这篇文章有意思的话,欢迎转发、收藏,给我一些鼓励~

有想看的内容或者建议,敬请留言!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MyBatis是一款流行的Java持久化框架,它提供了许多便捷的功能来简化数据库操作。其中一个重要的功能是自动生成MapperMyBatis自动生成Mapper是通过读取数据库表结构和配置文件,生成对应的Mapper接口和XML映射文件。这样我们就可以通过调用生成的Mapper接口来执行数据库的增删改查操作,而无需手动编写SQL语句。 使用MyBatis自动生成Mapper的步骤如下: 1. 首先,在MyBatis的配置文件中配置数据源和其他的一些相关信息。 2. 创建一个Java类,用来配置自动生成Mapper的参数,如数据库表名、实体类名、Mapper接口包名等。 3. 在配置文件中引入自动生成Mapper的插件。 4. 运行MyBatis自动生成Mapper插件,将会根据配置生成Mapper接口和XML映射文件。 生成的Mapper接口可以直接调用,以执行对应的数据库操作。例如,我们可以通过调用insert()方法来插入一条记录,或者通过调用selectById()方法来根据ID查询一条记录。 通过使用MyBatis自动生成Mapper,我们可以减少手动编写SQL语句的工作量,提高开发效率。同时,由于MyBatis是基于XML配置的,我们也可以根据需要对生成的XML映射文件进行修改和优化。 总结起来,MyBatis自动生成Mapper是一种方便快捷的工具,它可以根据数据库的表结构自动生成对应的Mapper接口和XML映射文件,进一步简化了数据库操作的开发工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值