Mybatis中SqlSession接口中的selectList方法

1、SqlSession

SqlSession是Mybatis持久层框架提供的接口,该接口中包含了大量的CRUD操作方法(既增删改查方法)。

2、selectList方法

selectList方法是用于查询的方法,该方法具有多态性,如图所示(打开mybatis的SqlSession接口所得到:

多态性:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性。简单的说:就是用基类的引用指向子类的对象。详情见理解面向对象的三大特性 -- 多态(详解!!!)_如何理解面向对象的多态特性-CSDN博客

3、详细分析selectList方法

该方法一共有三种不同的调用方式:

(1)List selectList(String var1);

第一种为单个参数的构造函数,参数为配置文件的mapper标签的namespace属性的值和 select标签的id属性的值,如图所示:

调用该方法就是:List selectList(com.qcby.mapper.EmployeeMapper.findAll);

(2) List selectList(String var1,Object var2);

第二种为两个参数的构造函数,其第一个参数和第一种一样,第二个参数是sql语句中所需要传入的参数,比如下图,我们需要传入的参数就是id。第二个参数也有可能是对象,mybatis可以以将sql语句需要的参数和对象的属性一一对应。

调用该方法就是:

List selectList(com.qcby.mapper.EmployeeMapper.findEmployeeMapper,id);

(3) List selectList(String var1, Object var2, RowBounds var3);

第三种为三个参数的构造函数,其中前两个参数和前一个方法相同,第三个参数为分页功能,可以根据需要传递,例如:

复制代码
RowBounds rowBounds = new RowBounds(1,4);

List<User> list=sqlsession.selectList(com.qcby.mapper.EmployeeMapper.findEmployeeMapper,id,rowBounds);
相关推荐
鶴哥只手遮天20 分钟前
Spring AI 2.0.1 深度解析-第 14 章 MCP 服务端(上):注解式实现与工具来源
java·人工智能·开源
鶴哥只手遮天21 分钟前
Spring AI 2.0.1 深度解析-第 15 章 MCP 服务端(下):三种协议形态、Streamable 传输与状态管理
java·人工智能·开源
鶴哥只手遮天27 分钟前
Spring AI 2.0.1 深度解析-第 16 章 向量存储(上):`VectorStore` 接口体系、`BatchingStrategy`
java·人工智能·开源
鶴哥只手遮天27 分钟前
Spring AI 2.0.1 深度解析-第 12 章 工具循环的流式形态、Usage 累加与扩展体系
java·人工智能·开源
鶴哥只手遮天29 分钟前
Spring AI 2.0.1 深度解析-第 23 章 模型供应商实现:从 `OpenAiSetup` 到 Bedrock
java·人工智能·开源
鶴哥只手遮天31 分钟前
Spring AI 2.0.1 深度解析-第 06 章 内置 Advisor 全景:13 个实现逐个剖到源码级
java·人工智能·开源
鶴哥只手遮天35 分钟前
Spring AI 2.0.1 深度解析-第 03 章 消息体系与 Prompt:不可变模型、`ChatOptions` 与模板渲染
java·人工智能·开源
鶴哥只手遮天37 分钟前
Spring AI 2.0.1 深度解析-第 24 章 生产实践与 2.x 迁移:陷阱清单、AOT 与调优
java·人工智能·开源
鶴哥只手遮天38 分钟前
Spring AI 2.0.1 深度解析-第 10 章 工具调用(中):执行链路、结果转换与工具限制
java·人工智能·开源
鶴哥只手遮天38 分钟前
Spring AI 2.0.1 深度解析-第 13 章 MCP 客户端:传输、工具聚合与命名冲突
java·人工智能·开源