0
点赞
收藏
分享

微信扫一扫

六、MyBatis特殊的SQL:模糊查询、动态设置表名、校验名称唯一性


六、MyBatis特殊的SQL:模糊查询、动态设置表名、校验名称唯一性_校验名称唯一性


文章目录

  • 六、MyBatis特殊的SQL
  • 6.1 模糊查询
  • 6.2 动态设置表名
  • 6.3 校验名称唯一性


六、MyBatis特殊的SQL

6.1 模糊查询

方式1:select * from litemall_user where username like ‘%${username}%’

(推荐)方式2:select * from litemall_user where username like concat(‘%’,#{username},‘%’)

@Test
public void getListByParam(){
        SqlSession sqlSession = SqlSessionUtils.getSqlSession();
        SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
        System.out.println(mapper.getListByParam("同学"));
    }

List<User> getListByParam(@Param("username") String username);

<!--
        方式1:select * from litemall_user where username like '%${username}%'
        (推荐)方式2:select * from litemall_user where username like concat('%',#{username},'%')
    -->
<select id="getListByParam" resultType="User">
        select * from litemall_user where username like concat('%',#{username},'%')
</select>

6.2 动态设置表名

@Test
public void getListByTableName(){
        SqlSession sqlSession = SqlSessionUtils.getSqlSession();
        SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
        System.out.println(mapper.getListByTableName("litemall_user"));
    }

List<User> getListByTableName(@Param("tableName") String tableName);

<select id="getListByTableName" resultType="User">
        select * from ${tableName}
</select>

6.3 校验名称唯一性

@Test
public boolean  checkNameVerify(){
        SqlSession sqlSession = SqlSessionUtils.getSqlSession();
        SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
        String username = "同学1";
        Integer id = 9;
        int result = mapper.checkNameVerify(username, id);
        if(result >=1){
            return Boolean.TRUE;
        }
        return Boolean.FALSE;
    }

int checkNameVerify(@Param("username") String username, @Param("id") Integer id);

<select id="checkNameVerify" resultType="integer">
        SELECT count(1) FROM litemall_user where username=#{username}
        <if test="id != null and id != 0">
            and id != #{id}
        </if>
</select>


举报

相关推荐

0 条评论