容易馬虎的list.add(對象)

public List<Message> getAllMessage(String sql,String[] args) throws Exception {
  // TODO Auto-generated method stub
  
  ResultSet  rs = this.executeQuery(sql, args);
   
  List<Message> list = new ArrayList<Message>();
//  Message message = new Message();   //2處
  try {
   while(rs.next())
   {
    Message message = new Message();               //1處
    message.setId(rs.getInt("id"));
    message.setName(rs.getString("name"));
    message.setPhone(rs.getString("phone"));
    message.setEmail(rs.getString("email"));
    message.setTitle(rs.getString("title"));
    message.setContent(rs.getString("content"));
    System.out.println(message.getId()+"-------------");
    list.add(message);
   }
   
   for (Message a : list) {
    System.out.println(a.getId()+"aaaaaaaaaaaaaaaaaaa");
   }
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   throw new Exception(" com.webbook.impl.MessageDaoImpl.public List<Message> getAllMessage(String sql,String[] args)方法異常",e);
  }
 
  return list;
 }

 

如果把1處註釋掉,2處放開,結果會反覆出現最後一條數據。

發佈了0 篇原創文章 · 獲贊 5 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章