javaspringboot架构。简单Mapper层(dao层)实现查询-静态和动态-mybatis的mapper接口xml映射

静态查询



动态SQL查询(<if>为true会拼接sql语句)
比如通过注解sql方法查询,写了个通过名字和性别和入职时间查数据的方法,但是我只输入了名字其他全为null,那这个注解方法就查不到数据,刚看到有种标签<if>,但是只能xml映射方法用,注解用不了

以下这样才对(但是其他没有输入的值得传个null不然会报错)
但是又有一个问题,我输入的值只要含有名字,那都会正常返回数据,但是一旦名字为null就会报错,因为sql语句第二第三个<if>里有and,前面没有名字的话语句连接不上



解决刚刚只能包含名字的问题(全为null就是查全部)(注意加了<where>之后把原来的where删掉)(<where>会在子元素有内容时插入where子句,而且会自动去掉开头的and和or)


更专业查询语句,避免多个查询用到相同字段,<sql>标签封装要查的字段和from,然后用<include>标签调用这个封装,可多个查询语句共同调用

静态修改(要是缺少值没输入则默认为null,覆盖修改)



动态修改(只改要改的其他不会覆盖)(<set>是用来自动去掉多余的逗号的,而且动态增加set)


静态增加



动态增加


静态删除



 批量删除(用到了<foreach> 标签)



 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号