오류 처리가 더 명확하고 읽기 쉽도록 할 수 있습니까?SQLiteOpenHelper의 오류 처리를 최적화하는 방법
public synchronized void doSomeTrans(...) throws Exception {
Exception ex = null;
SQLiteDatabase db = null;
boolean bTrans = false;
try {
db = getWritableDatabase();
db.beginTransaction();
bTrans = true;
db.execSQL(...);
db.execSQL(...);
db.setTransactionSuccessful();
}
catch (Exception ex1) {
ex = ex1;
}
if (db != null) {
if (bTrans != false)
db.endTransaction();
db.close();
}
if (ex != null)
throw ex;
}
는 또한, 내 버전에서 내가 어떤 오류가 endTransaction을 방법을 중심으로 처리하고이 메소드는 예외를 throw하는 경우 내 데이터베이스가 여전히 열려 존재하지 않습니다 내 버전은 부피가 조금처럼 보인다. 나는 그것이 좋지 않다고 생각하지만 try/catch 블록에 새로운 것을 추가하는 것이이 경우를위한 최선의 해결책이라는 것을 확신하지 못한다.
getWritableDatabase가 필요하지 않은 경우 db = getWritableDatabase()가 아닌 경우 db를 선언하는 방법은 무엇입니까? – seekingStillness
@seekingStillness, * * 필요합니다. 나는 각 작업을 위해 활동이나 서비스를 만들지 않고 활동이나 서비스의 구성원에 주위를 지켜야한다고 말한 것입니다. –