mapper
1.OptionsMapper.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.integrated.dt.mapper.OptionsMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.integrated.dt.entity.Options">
<id column="id" property="id" />
<result column="questionId" property="questionId" />
<result column="content" property="content" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, questionId, content
</sql>
<select id="getOptionsByQuestionId" resultType="com.integrated.dt.entity.Options">
SELECT
<include refid="Base_Column_List"/>
from options
where questionId =#{questionId}
</select>
</mapper>
2.QuestionMapper.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.integrated.dt.mapper.QuestionMapper">
<!-- 开启二级缓存 -->
<!-- <cache eviction="LRU" flushInterval="100000" readOnly="true" size="1024"></cache>-->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.integrated.dt.entity.Question">
<id column="id" property="id"/>
<result column="content" property="content" jdbcType="VARCHAR"/>
<result column="description" property="description" jdbcType="VARCHAR"/>
<result column="acOptionId" property="acOptionId"/>
</resultMap>
<resultMap id="QuestionOptionlsResultMap" type="com.integrated.dt.vo.QuestionVo">
<id column="id" property="id"/>
<result column="content" property="content" jdbcType="VARCHAR"/>
<result column="description" property="description" jdbcType="VARCHAR"/>
<result column="acOptionId" property="acOptionId"/>
<result column="level" property="level"/>
<collection property="optionsList" javaType="ArrayList"
ofType="com.integrated.dt.entity.Options" column="id"
select="com.integrated.dt.mapper.OptionsMapper.getOptionsByQuestionId">
</collection>
</resultMap>
<resultMap id="QuestionOptionlsByActivityIdResultMap" type="com.integrated.dt.vo.QuestionVo">
<id column="qId" property="id"/>
<result column="qContent" property="content" jdbcType="VARCHAR"/>
<result column="description" property="description" jdbcType="VARCHAR"/>
<result column="acOptionId" property="acOptionId"/>
<result column="level" property="level"/>
<collection property="optionsList" javaType="ArrayList"
ofType="com.integrated.dt.entity.Options" column="id"
select="com.integrated.dt.mapper.OptionsMapper.getOptionsByQuestionId">
</collection>
<collection property="optionsList" javaType="java.util.ArrayList"
ofType="com.integrated.dt.entity.Options">
<id column="oId" property="id" jdbcType="NUMERIC" />
<result column="questionId" property="questionId" jdbcType="NUMERIC" />
<result column="oContent" property="content" jdbcType="VARCHAR" />
</collection>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, content, description, acOptionId,level
</sql>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List_Vo">
A.id, A.content, A.description, A.acOptionId,A.level
</sql>
<select id="getQuestions" resultMap="QuestionOptionlsResultMap">
select
<include refid="Base_Column_List"/>
from question
</select>
<select id="selectActivityQuestion" resultMap="QuestionOptionlsByActivityIdResultMap">
select
<!-- <include refid="Base_Column_List"/>-->
A.id qId,
A.content qContent,
A.description,
A.acOptionId,
A.level,
c.id oId,
C.questionId,
c.content oContent
from question A
INNER JOIN activity_questions B
on A.id = B.questionId
LEFT JOIN options C
ON A.ID = C.questionId
where B.activityId = #{activityId}
</select>
</mapper>

浙公网安备 33010602011771号