Ich habe eine SchnittstelleSchnittstelle Implementierung startet verschiedene Ausnahmen
public interface DataDAO {
public void doSomething() throws Exception;
}
Lassen Sie uns sagen, dass es zwei Implementierungen, eine, die Datenbank verwendet die Daten und ein anderes zu erhalten, die einen Webservice verwendet.
Wie Sie bereits sehen können, ist das Problem die super generische Ausnahme gestartet. Da beide Implementierungen die gleiche Art von Ausnahme auslösen müssen.
Die Jdbc-Implementierung löst nur SQLException aus, während die Webservice-Implementierung nur die IOException erhöht.
Frage ist, wie kann ich die Schnittstelle eleganter machen, so dass ich eine richtige Ausnahme erfassen?
Das erste, was ich aber meine eigene Ausnahme war die Schaffung und es an der Schnittstelle Ebene erklären accordinly
public interface DataDAO {
public void doSomething() throws MyCoolException;
}
Und dann natürlich implementieren.
Frage ist, macht das Sinn? Ich habe nie eigene Ausnahmen erstellt, daher bin ich mir nicht sicher, ob das Sinn macht oder nicht. Was sollte ich beim Erstellen von MyCoolException beachten?
Wie wäre es mit Inspiration von Spring und dem Einschluss in RuntimeExceptions? –
@AjayGeorge Nun, ich möchte, dass diese Ausnahmen von der oberen Ebene behandelt werden, so dass sie RuntimExceptions für mich nicht gültig ist, korrigieren Sie mich, wenn ich falsch liege :) –
Nun könnten Sie RuntimeExceptions ableiten und dann eine [DataAccessException] (http : //static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/dao/DataAccessException.html) wie im Frühling. –