目录
4. 在AlbumMapperTests.java中编写并执行测试
需要执行的SQL语句大致是:
SELECT id, name, description, sort FROM pms_album WHERE id=?
由于不需要查询表中所有的字段,则查询结果不会使用实体类来封装,应该创建与以上查询的字段列表相对应的POJO类型,则在项目的根包下创建pojo.vo.AlbumStandardVO类:
@Data
public class AlbumStandardVO implements Serializable {
private Long id;
private String name;
private String description;
private Integer sort;
}
AlbumMapper.java中添加抽象方法在AlbumMapper.java中添加抽象方法:
AlbumStandardVO getStandardById(Long id);
AlbumMapper.xml中配置SQL语句在AlbumMapper.xml中配置SQL语句:
- <!-- AlbumStandardVO getStandardById(Long id); -->
- <select id="getStandardById" resultMap="StandardResultMap">
- SELECT
- <include refid="StandardQueryFields"/>
- FROM
- pms_album
- WHERE id=#{id}
- </select>
-
- <sql id="StandardQueryFields">
- id, name, description, sort
- </sql>
-
- <resultMap id="StandardResultMap" type="cn.tedu.csmall.product.pojo.vo.AlbumStandardVO">
- <id column="id" property="id" />
- <result column="name" property="name" />
- <result column="description" property="description" />
- <result column="sort" property="sort" />
- </resultMap>
提示:在配置时,主键字段应该使用标签来配置,否则,将无法使用Mybatis框架的缓存机制。
提示:column=(查询结果集中的)列,property=(类中的)属性。
AlbumMapperTests.java中编写并执行测试在AlbumMapperTests.java中编写并执行测试:
- @Test
- void getStandardById() {
- Long id = 1L;
- Object queryResult = mapper.getStandardById(id);
- log.debug("根据ID【{}】查询完成,结果:{}", id, queryResult);
- }
个人主页:居然天上楼
感谢你这么可爱帅气还这么热爱学习~~
人生海海,山山而川
你的点赞👍 收藏⭐ 留言📝 加关注✅
是对我最大的支持与鞭策
