您的位置:首页 > 其它

今天碰到的以为非法问题

2018-03-17 16:48 232 查看
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.TooManyR
List<Map> message= (List<Map>) itTvLiveMessageService.seachTvMessage(id);
List<TTvLiveMessage> newMessage=new ArrayList<TTvLiveMessage>();
if(message!=null){
for (int i=0;i<message.size();i++){
TTvLiveMessage tt=new TTvLiveMessage();
tt.setTime((Date) message.get(i).get("time"));
tt.setTvId((Integer) message.get(i).get("TvId"));
tt.setMessage((String) message.get(i).get("message"));
tt.setMember((String) message.get(i).get("member"));
tt.setId((Integer) message.get(i).get("id"));
tt.setAvater((String) message.get(i).get("avater"));
tt.setM_nick((String) message.get(i).get("m_nick"));
if(0!=(Integer) message.get(i).get("feedId")){
tt.setFeedId((Integer) message.get(i).get("feedId"));
tt.setFeedName(itTvLiveMessageService.seachNickName((Integer) message.get(i).get("feedId")));//出错
System.out.println(message.get(i).get("feedId").toString());
}
newMessage.add(tt);
}
}以上一段代码,总是在调用sql返回参数的时候出了问题,检查了下sql,发现我返回的String类型。
@Select("SELECT t3.m_nick'feedName' \n" +
"FROM t_tv_live_message t1 \n" +
"LEFT JOIN t_tv_live_message t2 ON t1.feedId=t2.id \n" +
"LEFT JOIN t_member t3 ON t2.member=t3.m_id \n" +
"WHERE t1.feedId=#{id}")
String seachTvNickName(@Param("id") int id)但是查询出的数据为多个数组类型。在select 加个去重DISTINCT@Select("SELECT DISTINCT t3.m_nick'feedName' \n" +
"FROM t_tv_live_message t1 \n" +
"LEFT JOIN t_tv_live_message t2 ON t1.feedId=t2.id \n" +
"LEFT JOIN t_member t3 ON t2.member=t3.m_id \n" +
"WHERE t1.feedId=#{id}")
String seachTvNickName(@Param("id") int id)问题解决
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: