1.日志包(log4j)导入,具体看第一条
2.日志配置文件(放在src目录下,且名字为【log4j.properties】),这是MyBatis中写好的东西,所以并不能像MybatisConfig一样自行解决
算了欠着,感觉日志这一栏要专门搞
二 MyBatis中逻辑运算的使用
1.<if>的使用
(1)基本使用
当goods有值时
查询结果:select * from goods where 1=1 and mid=?
查询结果:此处异常时因为:我写的返回值为Goods对象,没有值时会返回多条数据List结果
where标签的作用在于,添加where并且将第一条真的执行的语句的and去掉
(3)set中的if标签,对于if的使用,我们不仅仅是在where中使用,在update语句中,set语句依旧需要使用。相信你也注意到,这些标签的本质就是拼接字符串,set的语法与where是有很大的不同的,所以标签的写法也不同
执行语句
执行结果
这里可以看到,相较于where考虑语句前的and,我们需要考虑的是每个语句后面的逗号,所以在结尾加上mid=#{mid},因为对于对于大多数表来说,是不会允许或者不建议修改主键的。
执行结果
2.<choose>标签的使用:与switch语句使用类似,但是多选一,when相当于case,otherwise则是when全部无效时使用。
(1)where中的使用,其他与<if>标签类似
执行过程
执行结果
可以看出,即使有两个条件,但是当第一个条件判断成功后,就不会往下执行了,相当于break。
(2)<set>标签的使用:其实不常用,因为set修改并非只修改一个就够了
3.<foreach>标签的使用
(2)多使用与in中,多个对象的查询(又非全对象)
执行语句
执行结果: