為什么使用索引值控制臺輸出為null
@Test public?void?testSelectClauseReturnMay() { ????String?hql?=?"?select?new?map(s.name?as?name,s.tel?as?tel,s.address?as?address)?from?Seller?s"; Query?query?=?session.createQuery(hql); List<Map>?maps?=?query.list(); for(Map?map?:?maps)?{ System.out.println("name:"+map.get("0") +",?tel:"+map.get("1") +",?address:"+map.get("2")); } System.out.println("###########"); //以別名獲取信息 for(Map?map?:?maps)?{ System.out.println("name:"+map.get("name") +",?tel:"+map.get("tel") +",?address:"+map.get("address")); } } 控制臺輸出: name:null,?tel:null,?address:null name:null,?tel:null,?address:null name:null,?tel:null,?address:null name:null,?tel:null,?address:null ########### name:A服裝店,?tel:13000000000,?address:中國北京××區(qū) name:B數(shù)碼店,?tel:15800000000,?address:中國浙江杭州市××區(qū) name:C電器店,?tel:13012341234,?address:中國廣東深圳市××區(qū) name:D書店,?tel:18600000000,?address:中國陜西西安市××區(qū)
為什么用別名就有數(shù)據(jù)輸出了?求解?。?/p>
2017-08-15
因?yàn)镸ap里面只有key 和 value ,使用別名時會將key(即索引)改為別名,不再是0,1,2。取消掉別名即可按照原索引值(0,1,2)進(jìn)行控制臺輸出