第一种: 在java程序中,把like的内容组装好。 把这个内容传入到sql语句

//like第一种方式

List<Student> selectLikeOne(@Param("name") String name);

mapper

<!--like第一种方式-->
<select id="selectLikeOne" resultType="com.nefu.domain.Student">
    select * from student where name like #{name}
</select>

执行like

@Test
public void testLikeOne(){
    SqlSession sqlSession = MyBatisUtil.getSqlSession();
    StudentDao dao  = sqlSession.getMapper(StudentDao.class);
  String name="%符%";//%在java代码中
    List<Student> students = dao.selectLikeOne(name);
    sqlSession.close();
    students.forEach( stu-> System.out.println(stu));
}

第二种: 在mapper.xml的sql语句,组织like的内容。

sql语句like的格式: where name like “%“空格#{name}空格”%”

List<Student> selectLikeTwo(@Param("name") String name);
<select id="selectLikeTwo" resultType="com.nefu.domain.Student">
    select * from student where name like "%" #{name} "%"
    <!--% 在mapper.xml代码中-->
</select>
@Test
public void testLikeTwo(){
    SqlSession sqlSession = MyBatisUtil.getSqlSession();
    StudentDao dao  = sqlSession.getMapper(StudentDao.class);
    String name="符";
    List<Student> students = dao.selectLikeTwo(name);
    sqlSession.close();
    students.forEach( stu-> System.out.println(stu));
}
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐