在mybatis中,${} 和 #{} 的区别是什么
    ${}:底层用的是statement,有sql注入的风险
    #{}:底层用的是preparestatement,没有sql注入的风险

    如何获取自动生成的(主)键值?

    在mybatis中,resultType和ResultMap的区别是什么
    resultType:查询返回的结果列名与实体类的属性名完全一致,则用resultType
    resultMap:查询返回的结果类名与实体类中的属性名不完全一致,则需要用resultMap为表和实体类建立一一对应的映射关系

    在Mybatis中你知道的动态SQL的标签有哪些?作用分别是什么?
    :判断其test中的结果为true,再把标签内的sql动态拼接上
    :去除sql语句中多余的where and or
    :去除sql语句中多余的set和逗号
    :sql语句中需要多选一的情况下使用,类似java中的switch
    :sql语句中需要多选一的情况下配合choose使用,类似java中的case
    :sql语句中需要多选一的情况下配合choose使用,类似java中的default
    :遍历传入的集合对象,把每一项内容作为参数传到sql语句中
    :引用 标签的内容
    :where和set都可以通过trim去实现,其中有prefix和prefixOverrides两个方法
    :将可复用的内容抽取出来,通过include引入