学习动态sql,mybatis的一个重大特性
- 动态 SQL 是 MyBatis 的强大特性之一。如果你使用过 JDBC 或其它类似的框架,你应该能理解根据不同条件拼接 SQL 语句有多痛苦,例如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号。
- 利用动态 SQL,可以彻底摆脱这种痛苦。
学习一下几个动态元素即可。。。。。。。。。这样子写动态sql就简单容易多的了。。。。。。。
- if
- choose (when, otherwise)
- trim (where, set)
- foreach
动态sql if
使用很简单、,之前用node做动态sql时,因为要动态拼接条件,我在拼接sql的时候其实很冗余,代码贼垃圾,现在发现这个mybatis就是好,拼接sql就很简单。。。。。。。。
<select id="getBlog" resultType="pojo.Blog">
select * from blog where 1=1
<if test="title != null">
and title=#{title}
</if>
<if test="views!=0">
and views=#{views}
</if>
</select>
就这几个关键字,我打算以后实际搞代码的时候在练习,不过这些元素也太渴了,满足了我在写node的时候动态sql拼接的一切问题,舒服!
https://mybatis.org/mybatis-3/zh/dynamic-sql.html
使用参考官方文档即可。
使用sql标签也可以抽取公共的部分
mybatis的缓存,,,,,
大致了解下有一级缓存、二级缓存、缓存的原理即可。。。。。等以后用到了再好好过