在EmplyeeMapper.java中:
public List<Employee> getEmpByLastnamelike(String lastname);
在EmployeeMapper.xml中
<select ID="getEmpByLastnamelike" resultType="com.gong.mybatis.bean.Employee"> select ID,last_name lastname,gender,email from tbl_employee where last_name like #{lastname} </select>
由于数据库中的字段last_name与实体类中的lastname名字不对应,因此需要用别名来指代。
之后进行单元测试:
package com.gong.mybatis.test;import java.io.IOException; java.io.inputStream; java.util.List; org.apache.ibatis.io.Resources; org.apache.ibatis.session.sqlSession; org.apache.ibatis.session.sqlSessionFactory; org.apache.ibatis.session.sqlSessionFactoryBuilder; org.junit.Test; com.gong.mybatis.bean.Employee; com.gong.mybatis.dao.EmployeeMapper; com.gong.mybatis.dao.EmployeeMapperAnnotation;public class TestMybatis { public sqlSessionFactory getsqlSessionFactory() throws IOException { String resource = "mybatis-config.xml"; inputStream is = Resources.getResourceAsstream(resource); return new sqlSessionFactoryBuilder().build(is); } @Test voID test04() IOException { sqlSessionFactory sqlSessionFactory = getsqlSessionFactory(); sqlSession openSession = sqlSessionFactory.openSession(); try { EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.); List<Employee> employees = mapper.getEmpByLastnamelike("%小%"); for(Employee e:employees) { System.out.println(e); } openSession.commit(); } finally { openSession.close(); } }}
补充:进行模糊查询时:
1. liKE'Mi%' 将搜索以字母 Mi开头的所有字符串(如 Michael)。
2. liKE'%er' 将搜索以字母 er 结尾的所有字符串(如 Worker、Reader)。
3. liKE'%en%' 将搜索在任何位置包含字母 en 的所有字符串(如 When、Green)。
在数据库中的数据为:
执行test04方法,得到:
至此结合List进行select *** 作的流程就基本完成了。 需要注意的若返回值是List集合,在mapper.xml文件中返回值的类型是集合里面的类的类型。
总结以上是内存溢出为你收集整理的mybatis文件映射之select *** 作返回List集合全部内容,希望文章能够帮你解决mybatis文件映射之select *** 作返回List集合所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)