그래서 나는 꽤 좋고 유용한 DBAdapter 클래스라고 생각하는 것을 썼습니다. 나는 getters, inserters, updaters를 썼다. 각 메소드에는 db.open()이 있고, 몇 가지 작업을 수행하고 db.close가 커서를 반환합니다. 필자는 주 코드에서 Cursor c = db.getAllThings()와 같은 것을 쓰고 나서 커서를 반복 할 수있을 것이라고 생각했습니다. DBAdapter에서 db를 닫을 때, 커서가 유효하지 않음을 알았습니다. 그래서 DBAdapter 클래스에서 db.open과 db.close를 제거하고 각 호출에서 처리합니다.강력한 DBAdapter 클래스 작성
db.open();
Cursor c = db.getAllThings();
db.close();
글쎄, 나는 커서를 닫지 않고 있다는 오류를 보았다. 좋아요, 나는 그것을 DBAdapter 클래스에 넣을 수도 없습니다. 나는 각 전화에 그것을해야한다. 그래서 지금 내가 가지고있다
db.open();
Cursor c = db.getAllThings();
c.close();
db.close();
그 데이터를 얻는 4 줄의 코드. 오, 그리고 내가 MoveToFirst하고 다른 사람이 누군지 알아야한다는 것을 잊지 마세요.
그렇다면 좋은 DBAdapter 클래스는 어떻게 작성합니까? 아니면 얻은만큼 좋을까요?