Mybatis参考

官方参考文档

 

语法参考




<!--字段转换指定类型-->
<sql>
    user_name = #{userName,jdbcType=VARCHAR}
</sql>

<!--返回类型为内部类-->
<resultMap id="InnerOrgRepVO" type="xxx.UserRepVO$InnerOrgRepVO">
   <result column="org_code" property="orgCode"/>
    <result column="org_name" property="orgName"/>
</resultMap>

    

<!--listOrgByUserCode为另一个sql,即子查询方法-->    

<resultMap id="UserRepVO" type="xxx.UserRepVO">
    	<result column="id" property="id"/>
        <result column="user_code" property="userCode"/>
        <collection property="orgList" column="{userCode = user_code}" select="listOrgByUserCode"></collection>
    </resultMap>


<!--固定2层树状查询-->    
<resultMap id="treeMap" type="TreeNode">
        <result column="value"  property="value" />
        <result column="label" property="label"/>
        <collection property="children" ofType="TreeNode">
            <result column="value"  property="value" />
            <result column="label" property="label"/>
        </collection>
    </resultMap>


<!--任意层树状查询 begin -->    
<resultMap id="treeNodeMap" type="TreeNode">
        <result column="value"  property="value" />
        <result column="label" property="label"/>
        <collection property="children" ofType="TreeNode"
column="{parentValue= value}" select="listOrgByParentValue"
/>
    </resultMap>

<select id="listOrgByParentValue" resultMap="treeNodeMap">

select value as value,
       label as label
from tree
      where parent_value = #{parentValue}

</select>

<!--任意层树状查询 end -->  

<!--批量操作-->

    <update id="batchUpdate" parameterType="com.learn.UserInfo">
        UPDATE product_info
        <set>
            <if test='null != userName'>
                user_name= #{userName},
            </if>
        </set>
        <where>
            and id in
            <foreach collection="list"  index="index" item="item" open="(" separator="," close=")">
                #{item.id}
            </foreach>
        </where>
    </update>

 

### 关于 MyBatis 的官方文档与参考资料 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。对于希望深入了解并掌握该技术栈的开发人员来说,获取高质量的学习资源至关重要。 #### 官方网站与文档 访问官方网站可以获得最权威的信息和技术指导。MyBatis 提供详尽的官方文档,涵盖了从基础概念到复杂特性的全面介绍[^1]。这些文档不仅适合初学者快速上手,也能够帮助有经验的开发者解决实际项目中遇到的问题。 #### 社区贡献教程 除了官方渠道外,互联网上有许多由社区成员编写的优质文章和视频课程可供参考。例如,“MyBatis入门学习教程”,这份材料深入浅出地讲解了如何使用动态SQL元素构建灵活高效的查询语句;还有专门针对特定功能模块如迁移工具(MyBatis Migrations)使用的指南,这有助于理解怎样通过自动化手段简化数据库版本控制流程[^2]。 #### 实战案例分析 实践是检验真理的标准之一,在掌握了理论知识之后,阅读一些真实的项目案例能进一步加深理解和应用能力。“LambdaQueryWrapper< Teacher> wrapper = new LambdaQueryWrapper<>(); List<Teacher> teachers = mybatisPlusTestMapper.selectList(wrapper);”这段代码展示了如何利用条件构造器实现简单而有效的实体类操作[^3]。另外,有关集成Spring框架的内容也不可忽视——比如借助`MapperScannerConfigurer`组件自动扫描注册Mapper接口至IoC容器内的技巧[^4]。 综上所述,无论是新手还是资深工程师都能找到适合自己水平层次的学习路径去探索MyBatis的魅力所在。 ```java // 示例:配置 Mapper 接口为 Spring Bean @Bean public MapperFactoryBean<MyBatisExampleInterface> exampleInterface() { MapperFactoryBean<MyBatisExampleInterface> factoryBean = new MapperFactoryBean<>(MyBatisExampleInterface.class); return factoryBean; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值