项目为ssm架构,某一个sql查询如下
<select id="getUnitInvokeResponseTime"
resultType="com.jiuqi.uom.application.screen.server.model.invoke.InterfaceInvokeLogVO">
select ASK_USER_NAME as type, ASK_USER_CODE, ASK_TIME as askTime, avg(RELEVANT_TIME_LENGTH) as avgResponseTime
from UOM_INTERFACE_INVOKE_LOGS
<include refid="Base_Where"/>
group by ASK_USER_NAME, ASK_USER_CODE, ASK_TIME
</select>
返回类型实体
@Data
public class InterfaceInvokeLogVO extends InterfaceInvokeLogDO {
/**
* 数量
*/
private Long invokeNums;
/**
* 平均响应时长
*/
private String avgResponseTime;
/**
* 时段
*/
private String period;
/**
* 数据类型(接口类型/单位类型)
*/
private String type;
/**
* 代码
*/
private String code;
/**
* 传输量大小(GB)
*/
private Double size;
/**
* ip 个数
*/
private Integer ipCount;
/**
* ip 地址
*/
private String ip;
}
父类实体
@Data
public class InterfaceInvokeLogDO {
/**
* 请求用户单位
*/
private String askUserCode;
}
业务代码
@Override
public InterfaceInvokeResponseTimeVO getUnitInvokeResponseTime(InvokeInVO inVO) {
List<InterfaceInvokeLogVO> resultList = interfaceCallsDao.getUnitInvokeResponseTime(inVO);
if (CollectionUtils.isEmpty(resultList)) {
return new InterfaceInvokeResponseTimeVO();
}
resultList.stream().filter(item -> item.getAskUserCode().matches(Constants.ID_NUMBER_REX))
.forEach(item -> item.setAskUserName(PERSONAL));
return buildResult(resultList);
}
拿到结果集resultList后,本地debug下能够取到askUserCode的值,但是环境上不可以,很迷惑