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中,多个对象的查询(又非全对象)

执行语句

执行结果:
