目录

1.书写SQL语句

2. 在AlbumMapper.java中添加抽象方法

3. 在AlbumMapper.xml中配置SQL语句

4. 在AlbumMapperTests.java中编写并执行测试


1.书写SQL语句

 需要执行的SQL语句大致是:

由于不需要查询表中所有的字段,则查询结果不会使用实体类来封装,应该创建与以上查询的字段列表相对应的POJO类型,则在项目的根包下创建pojo.vo.AlbumStandardVO类:

2. 在AlbumMapper.java中添加抽象方法

AlbumMapper.java中添加抽象方法:

3. 在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>

提示:在配置<resultMap>时,主键字段应该使用<id>标签来配置,否则,将无法使用Mybatis框架的缓存机制。

提示:column=(查询结果集中的)列,property=(类中的)属性。

4. 在AlbumMapperTests.java中编写并执行测试

AlbumMapperTests.java中编写并执行测试:

@Test
void getStandardById() {
    Long id = 1L;
    Object queryResult = mapper.getStandardById(id);
    log.debug("根据ID【{}】查询完成,结果:{}", id, queryResult);
}

【Mybatis编程:根据id查询相册数据详情】-LMLPHP

11-29 11:14