面试_Mybatis
Mybatis的标签
基础SQL标签
:
select
:用于定义查询语句。insert
:用于定义插入语句。update
:用于定义更新语句。delete
:用于定义删除语句。
关联关系配置标签
:
collection
:用于处理一对多关系,将结果集中的多个记录映射到Java对象的集合属性中。association
:用于处理一对一关系,将结果集中的单个记录映射到Java对象的某个属性中。
结果映射标签
:
resultMap
:用于定义SQL查询结果集与Java对象之间的映射关系。它包含了<id>
、<result>
、<association>
、<collection>
等子标签。
动态SQL标签
:
if
:用于在SQL语句中根据条件动态地包含或排除某些部分。choose
、when
、otherwise
:类似于Java中的switch-case-default结构,用于在SQL语句中根据条件选择不同的执行路径。where
:用于在SQL语句中动态地添加WHERE子句,并智能处理多余的AND或OR操作符。set
:用于在SQL语句中动态地添加SET子句,并智能处理多余的逗号。trim
:用于自定义SQL语句的修剪规则,包括前缀、后缀、包含和排除的内容。foreach
:用于在SQL语句中迭代集合或数组,并生成相应的SQL片段。
其他标签
:
sql
:用于定义可重用的SQL片段,并在其他SQL语句中通过<include>
标签引用。include
:用于引用在其他地方定义的SQL片段。typeAliases
:在Mybatis的配置文件中使用,用于定义类型别名,方便在映射文件中使用简短的别名代替完整的Java类名。
请注意,以上标签只是Mybatis中常用的一部分,实际上Mybatis还提供了更多的标签和功能来满足复杂的SQL映射需求。
最后,需要强调的是,虽然Mybatis提供了丰富的标签和功能,但在实际开发中,应该根据具体的业务需求和项目特点来选择合适的标签和配置方式,以确保代码的简洁性、可读性和可维护性。
mybatis是如何实现分页的
MyBatis 使用 RowBounds 对象进行分页,它是针对 ResultSet 结果集执行的内存分页,而非物理分页
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Jackson Zhang!
评论
ValineDisqus