When designing a java application(not web based), do you have to do class diagrams and domain models or just one would do. because as far as i know class diagrams should be done for each use case and domain diagram describes the overall system......is that correct?
Don't stare blindly at what diagrams to use. Use them when you see the need.
You're falling into the trap UML sets for the unwary (which sadly includes many "architects" and "managers") which is to think it's a goal in itself, maybe even more important than the final code.
It's not, it's merely a tool to help you visualise and communicate your design choices more clearly than the written word alone can do.