MyBatis模糊查询

MyBatis模糊查询

(2012-02-04 12:36:13) 转载


映射文件:

 

<select id="selectStudentByName" parameterType="String" resultType="Student">
  select s_id,s_name,s_age
  from student
  where s_name like
'%'||#{s_name}||'%'
 </select>

 

此方法在mybatis-3.1.0测试通过

-----------------------------------------------------

public List<Student> queryStudentsByName(String name) {
  List<Student> students;
  try{
   sqlSession = sf.openSession();
   students = sqlSession.selectList("selectStudentByName", name);
  }finally{
   sqlSession.close();
  }
  return students;
 }

------------------------------------------------------

@Test
 public void queryStudentsByNameTest(){
  IStudentDAO sDAO = new IStudentDAOIbatisImpl();
  for(Student stu :sDAO.queryStudentsByName("x")){
   System.out.println(stu);
  }
 }

 

如果是ibatis:

select s_id,s_name,s_age

from student

where s_name like '%$s_name$%'

-------------------------------------------------------

 

模糊查询的实现 两种方式:

一:在sql语句里写 % %

二:在参数中写 "%xxx%"

 

<select id="selectStudentByName" parameterType="String" resultType="Student">
  select s_id,s_name,s_age
  from student
  where s_name like #{s_name}
 </select>

 

@Test
 public void queryStudentsByNameTest(){
  IStudentDAO sDAO = new IStudentDAOIbatisImpl();
  for(Student stu :sDAO.queryStudentsByName("%x%" )){
   System.out.println(stu);
  }
 }

 

mybatis-3.1.0测试通过

你可能感兴趣的:(mybatis)