Tengo algunos métodos que realizan algunos cambios de datos en una base de datos (insertar, actualizar y eliminar). El ORM que estoy usando devuelve los valores int afectados por la fila para ese tipo de método. ¿Qué debo devolver para "mi método", para indicar el estado de éxito / fracaso de la operación?
Considere el código que está devolviendo un int
:
A.1
public int myLowerLevelMethod(int id) {
...
int affectedRows = myOrm.deleteById(id)
...
return affectedRows;
}
Entonces uso:
A.2
public void myOtherMethod() {
...
int affectedRows = myLowerLevelMethod(id)
if(affectedRows > 0) {
// Success
} else {
// Fail
}
}
Compare con el uso de boolean:
B.1
public boolean myLowerLevelMethod(int id) {
...
int affectedRows = myOrm.deleteById(id)
...
return affectedRows > 0;
}
Entonces uso:
B.2
public void myOtherMethod() {
...
boolean isSuccess = myLowerLevelMethod(id)
if(isSuccess) {
// Success
} else {
// Fail
}
}
¿Cuál (A o B) es mejor? O pros / contras de cada uno?