It sounds like you've got an exception handling strategy, and that puts you ahead of a lot of people. But I am apprehensive that you say, "I have to log as quick as I can DB errors...".
How does your UI layer KNOW that an exception occurred at the DAO layer? When the "catch late" rule is violated, the rest of the program thinks that there was no error. If there's a DB error reading a DAO, the rest of the program cannot operate on that DAO (attempting to would like result in NullPointerExceptions).
Of course, I realize there are details of your program I'm missing, and it may be that you are taking care of these issues perfectly well. But strongly consider the "catch late" rule in the context of your program. Of my three rules, I'd say this is probably the most important one, and the one that is least understood. |