为什么getjdbctemplate().query升级mysql后返回空列表?

ckx4rj1h  于 2021-06-17  发布在  Mysql
关注(0)|答案(0)|浏览(156)

我最近从Java6升级到了8,MySQL5.5升级到了5.7,SpringMVC2升级到了5.0.9。我有以下代码,这在升级前工作。但现在如果我尝试,它返回一个条目的map列表,但map是空的。但事实是,数据库有一个可用的值。

Map<Integer, String> transmittalIds =  new HashMap<Integer, String>();    
String query = "";
    query.append("SELECT TRANSMITTALID, TRANSMITTALCODE FROM LEADERTRANSMITTAL WHERE ")
            .append(" CASENUMBERREPORT = 'N'")
            .append(" AND STATUS = 'SENT'");

    List<Map<Integer, String>> list = getJdbcTemplate().query(query.toString(), new TransmittalIdMapper()); 

    public static final class TransmittalIdMapper implements RowMapper<Map<Integer, String>>{

            @Override
            public Map<Integer, String> mapRow(ResultSet rs, int arg1) throws SQLException {

                Map<Integer, String> map = new HashMap<Integer, String>();

                while(rs.next()){
                    int transmittalId = rs.getInt("TRANSMITTALID");
                    String transmittalCode = rs.getString("TRANSMITTALCODE");

                    map.put(transmittalId, transmittalCode);
                }
                return map;
            }
        }

        System.out.println("List size: "+list.size());

          if( list != null && !list.isEmpty()){
              System.out.println("List: "+list.get(0));
              System.out.println("Map: "+list.get(0).size());
              transmittalIds = list.get(0);
          }

输出如下:列表大小:1列表:{}Map:0

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题