나는 당신 자신의 답변을 제공하려고 노력할 것이다.
API에서 throw 가능한 메소드를 작성하십시오. 이는 일반적인 API 실습입니다. 목록을 작성
하고 fieldName에 키와 반환 된 데이터가있는 의 HashMap으로 채워집니다 반환되는 각 레코드는 값이 다음 추가 할 수 있습니다 :
ResultSet
그냥 List<HashMap<String, dataType>>
처럼 List 에의 HashMap 각 레코드에 대해 새 HashMap을 만들고 반복하십시오.
결과 집합에 대해 metaData를 사용하여 반환 된 열의 수와 반환 된 열의 이름을 가져올 수 있습니다.
//rs is a ResultSet
rs.getMetaData().getTableName(int Column);
rs.getMetaData().getColumnCount();
선택 쿼리에 대한 예제 코드 :
private List<HashMap<String,Object>> selectQuery(sql) throws SqlException {
//assumption that connection is a global
List<HashMap<String, Object>> results = new ArrayList<HashMap<String, Object>>();
HashMap<String, Object> record = null;
PreparedStatement pStmt = conn.prepareStatement(sql);
ResultSet rs = pStmt.executeQuery();
while (rs.next() {
record = new HashMap<String, Object>();
for (int i : rs.getMetaData().getColumnCount()) {
record.put(rs.getMetaData().getTableName(i), rs.getString(i));
}
results.add(record);
}
rs.close();
return results;
}
연결 -
그들은 그것을 닫을 때까지 열려있는 연결을 유지합니다. 개발자는 이 항상 연결을 닫아야한다는 것을 충분히 알고 있어야합니다. 누출을 생성하십시오.클래스는
당신은 연결을 획득하고 관리하는 연결 풀을 사용해야 연결 처리 할
:
훌륭한 자료를 제공해 주신 모든 분들께 감사드립니다. 그러나 이것은 좋은 스타일을 연습하는 좋은 예입니다. 디자인 질문에 대해 자세히 설명 할 수 있기를 바랍니다. – user3352280