zoukankan      html  css  js  c++  java
  • MyBatis 学习笔记(2)

    1、执行SQL时传递多参数

    如果 parameterType 使用 map 类型,即 parameterType="map",那么可以使用注解(@Param)方式传递参数,而最好不要直接传递 Map:

    public List<Role> findRoleByAnnotation(@Param("roleName") String rolename, @Param("note") String note);
    <select id="findRoleByAnnotaion" parameterType="map" resultMap="roleMap">
        select id, role_name, note from t_role
        where role_name like concat('%', #{roleName}, '%')
        and note like concat('%', #{note}, '%')
    </select>

    或者定义一个类,parameType="com.learn.params.RoleParam",这样接口可以这样定义

    public List<Role> findRoleByParams(RoleParam param)

    2、获取查询结果

    简单类型可以通过 resultType 通过驼峰命名自动映射到实体类 resultType="com.learn.RoleBean"

    复杂的结果则可以通过 resultMap 来映射:

    <resultMap id="roleResultMap" type="com.learn.pojo.Role">
        <id property="id" column="id" />
        <result property="roleName" column="role_name" />
        <result property="note" column="note" />
    </resultMap>
    
    <select parameterType="long" id="getRole" resultMap="roleResultMap">
        select id, role_name, note from t_role where id = #{id}
    </select>
  • 相关阅读:
    泛型的内部原理:类型擦除以及类型擦除带来的问题
    Redis的那些最常见面试问题
    线程池全面解析
    对线程调度中Thread.sleep(0)的深入理解
    集群环境下Redis分布式锁
    3.8
    3.7
    3.6任务
    3.5任务
    3.4
  • 原文地址:https://www.cnblogs.com/zawier/p/7965540.html
Copyright © 2011-2022 走看看