◆元素是简单的条件判断,可以用来实现某些简单的条件选择。
◆以数据库test中数据表user_info为例,要求按照用户名模糊查询。如果输入用户名为h,则查询包含用户h的用户信息,如果没有输入,则查询所有用户。
◆使用元素实现这个实例的步骤如下
(1)将项目mybatis7导入eclipse开发环境中
(2)在映射文件UserInfoMapper.xml中,添加一个id为findUserInfoByUserNameWithIf的元素。
(3)在com.mybatis.mapper包中,创建接口UserInfoMapper的声明方法。
(4)在测试类中添加测试方法testfindUserInfoByUserNameWithIf。
◆当元素较多时可能会拼装成where and或者where or之类的关键字多余的错误SQL语句,使用元素可以轻松有效地解决这问题。只有 元素内的条件成立时,才会在拼装SQL语句时加上where关键字。如果出现where and或者where or时,元素会自动剔除where关键字之后多余的and或or。
◆以数据表user _info为例,要求按用户名模糊查询,同时查询指定状态的用户列表,使用和元素实现这一示例的过程如 下所示。
(1)在映射文件UserInfoMapper.xml中,添加一 个id为findUserInfoByUserNameAndStatus的元素。
(2)在接口UserInfoMapper中,声明一个
findUserInfoByUserNameAndStatus方法。
(3)在测试类MybatisTest中,添加一个测试方法。
◆ 和元素可用来组装update语句,只有当元素内的条件成立时人才会在组装SQL语句时加上set关键字。 元素内包含了子元素,每个元素包含的SQL后面会有一个**逗号,**拼接好的SQL语包中会包含多余的逗号,从而造成SQL语法错误。不过不用担心,元素能将SQL语句中多余的逗号剔除。
◆以数据表user_ info为例,要求更新某个用户的用户名和密码,使用和元素实现这一示例的过程如下所示。
(1)在映射文件UserInfoMapper.xml中,添加一个id为updateUserInfo2的元素。
(2)在接口UserInfoMapper中,声明一个
updateUserInfo2方法。
(3)在测试类MyhatisTest中,添加一个测试方法testUpdateUserInfo2。
在这里插入图片描述