[一点笔记]Mybatis配置及sql操作(一)

这篇博客记录了在maven项目中使用Mybatis进行数据库操作的学习过程,包括全局配置、映射文件的配置,涉及增删改查操作,深入讲解了select、resultMap、association、collection、discriminator等标签的用法,以及返回类型封装、自定义映射规则、关联查询、级联封装、分步查询和延迟加载等高级特性。详细内容见代码注释和项目结构解析。
摘要由CSDN通过智能技术生成

创建maven项目进行的mybatis相关知识学习,包括:

  mybatis全局配置
  mybatis映射文件配置与增删改查
  mybatis映射文件select、resoultmap、association、collection、discriminator标签
  mybatis返回类型封装、自定义映射规则、关联查询、级联封装、分步查询、延迟加载

#说明见代码中注释
项目结构如图:
在这里插入图片描述

mybatis-config

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!--
        引入properties配置文件内容
        resource:引入类路径下资源
        url:引入网络路径或磁盘路径资源
        -->
    <properties resource="dbcconfig.properties"></properties>

    <!--设置每一个项设置值
    name:项名
    value:值-->
    <!--开启驼峰命名-->
    <settings>
        <setting name="mapUnderscoreToCamelCase" value="true"/>
        <!--懒加载,所有值在使用时被检索-->
        <setting name="lazyLoadingEnabled" value="true"/>
        <!--关闭时检索的内容中被使用的部分在调用时才被加载-->
        <setting name="aggressiveLazyLoading" value="false"/>
    </settings>

    <!--typeAliases为某个java类起别名(别名不区分大小写)
    在类中可以使用@Alias("")注解起别名
    默认全小写,
    alias:指定新别名-->
    <typeAliases>
        <typeAlias type="com.model.User" alias="usr"/>
        <!--批量起别名
        package为某个包下所有类批量起名
        name:指定包名,为当前包以及下面所有的后代包的每一个类都起一个默认包名(别名为类名小写)-->
        <!--<package name="com.model"/>-->
    </typeAliases>

    <environments default="development">
        <!--配置环境default指定某种环境
            environment配置具体环境必须有两个标签id表示当前环境标识
                transactionManager:事务管理器
                    type:事务管理器类型;JDBC(JdbcTransactionFactory)|MANAGED(ManagedTransactionFactory)
                dataSource:数据源
                    type:数据源类型;UNPOOLED(UnpooledDataSourceFactory)|POOLED(PooledDataSourceFactory)|JNDI(JndiDataSourceFactory)
                        默认为POOLED
                    自定义数据源:实现DataSourceFactory接口-->
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="${jdbc.driver}"/>
                <property name="url" value="${jdbc.url}"/>
                <property name="username" value="${jdbc.username}"/>
                <property name="password" value="${jdbc.password}"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <!--mapper:注册SQL映射文件
            注册配置文件
            resource:引用类路径下的sql映射文件
            url(完全限定资源定位符):引用网络或磁盘路径下的sql映射
                <mapper url="file:///var/mappers/AuthorMapper.xml"/>
            注册接口
            class:使用映射器接口实现类的完全限定类名
                需求1)有sql映射文件.xml,并且与接口放在同一目录下
                    2)没有sql映射文件,所有sql用注解写在接口上(不推荐)
            package:批量注册-->
        <mapper resource="mapper.xml"/>
        <mapper resource="jobmapper.xml"/>
    </mappers>
</configuration>

mapper

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.or
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值