Я столкнулся со следующими кодами, которые, как мне кажется, делают неправильно:
(Обратите внимание, что это JDK 1.4.2, поэтому список не типизирован)
StringBuffer queryBuffer = new StringBuffer();
ArrayList temp = new ArrayList();
...
queryBuffer.append("and sb.POSTCODE = ? ");
temp.add(postcode);
...
conn = ConnectionManager.getConnection();
pstmt = conn.prepareStatement(queryBuffer.toString());
Вот что я меня беспокоит:
for(int i=0; i<temp.size(); i++) {
log.debug("setString("+ (i+1) + "," + (String)temp.get(i) + ")");
pstmt.setString(i+1, (String)temp.get(i));
}
Но я заметил, что некоторые из соответствующих типов данных (полей) в базе данных являются целыми числами и датами, это нормально?