SQL语句:
select distinct
advice_no,
time(cure_begin_time) as cure_begin_time,
time(cure_end_time) as cure_end_time,
cure_week_day
from cure_schedule where delete_flag=0
SQL查到结果是
mybatis映射文件XML的resultMap是
-------修改前------
<resultMap id="CureInfo" type="com.aadata.yiyang.entity.request.CureScheduleCreateCureInfo">
<result property="adviceNo" column="advice_no" />
<result property="cureBeginTime" column="cure_begin_time" />
<result property="cureEndTime" column="cure_end_time" />
<collection property="cureWeekDay" ofType="Long" column="cure_week_day"/>
</resultMap>
但是返回Java对象是
"adviceNo": "2023040194",
eginTime": "10:00:00",
"cureEndTime": "10:20:00",
"cureWeekDay": [
2023040194,
2023040194,
2023040194
]
如果去掉adviceNo字段则会报空指针错误。
解决方法:
-------修改后------
<resultMap id="CureInfo" type="com.aadata.yiyang.entity.request.CureScheduleCreateCureInfo">
<result property="adviceNo" column="advice_no" />
<result property="cureBeginTime" column="cure_begin_time" />
<result property="cureEndTime" column="cure_end_time" />
<collection property="cureWeekDay" ofType="Long">
<result column="cure_week_day"/>
</collection>
</resultMap>
"adviceNo": "2023040194",
"cureBeginTime": "10:00:00",
"cureEndTime": "10:20:00",
"cureWeekDay": [ 2, 4, 5]