发表于: 2017-09-11 23:30:02
2 714
一、 今天完成的事情
1) 深度思考
Q22、Mybatis常用标签和动态查询
主配置文件中常用标签:
environments:用于配置运行的环境
mappers:注册映射文件
properties:注册数据库连接的四要素文件
typeAliases:定义参数对象类型的别名
映射文件中常用标签:
insert:操作插入的sql语句
delete:操作删除的sql语句
select:操作查询的sql语句
update:操作更新的sql语句
if:条件控制标签
where:条件控制标签
choose:条件控制标签,该标签中只可以包含<when/><otherwise/>
foreach:循环控制标签
动态查询
主要用于解决查询条件不确定的情况;在程序运行期间,根据用户提交的查询条件进行查询。可通过使用<if/>或<where/>或<choose/>或<foreach/>等标签实现(详见以下)
2) MyBatis——动态查询
1) if标签
通过if标签控制是否增加条件实现动态查询,要求第一个条件为“true”
2) where标签
尽管if标签可以实现动态查询,但是每次查询都要判断第一个条件,即使它为true,这对于大数据量的db来说十分影响效率,因此可以使用where标签。
Where标签在查询条件有and时,也会自动判断是否需要加上“and”,不需要时会忽视它。
3) choose标签
choose,选择,它会从几个when标签中顺序选择一个符合判断条件的查询条件进行查询,否则执行otherwise标签的内容。有点类似switch。
4) foreach标签
当传入的值是数组或列表时可使用,循环遍历
二、 明天计划的事情
1)复习Java基础
三、 遇到的问题
1)今天收到学校某个工作室招人的消息,了解到javaweb的要求后有些沮丧,自己还是太弱了
四、 收获
1)暂时结束了mybatis的学习,对mybatis有个初步且清晰的了解,不再像之前一样,只是在单纯的调用api,也看不懂配置文件之类的。
评论