加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

mybatis文件映射之select操作返回List集合

发布时间:2020-12-14 18:03:02 所属栏目:大数据 来源:网络整理
导读:在EmplyeeMapper.java中: public ListEmployee getEmpByLastNameLike(String lastName); 在EmployeeMapper.xml中 select id ="getEmpByLastNameLike" resultType ="com.gong.mybatis.bean.Employee" select id,last_name lastName,gender,email from tbl_em

在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文件中返回值的类型是集合里面的类的类型。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读