See my answer to a previous question here. That answer is broader than just talking about how to connect to Notes and Domino from Java, but it does include a good summary of the options you have from Java, and there's a reference to a very old book that you can download for free and is useful even if it is old. It has an excellent introduction to the principles of Notes and Domino in addition to a lot of information about the Java API. Once you've read it, you should be able to ask more specific questions and we will be able to help you with them.
(But don't edit this question or ask questions via follow-up comments. Open new, specific questions about things you don't understand or things you've tried but have been unable to get working.)
As far as software goes, you may not need to install anything besides Domino Designer, but the truth is it depends on what environment you are going to develop in, what environment you are going to run in, and what choice you make about the different ways you can access Notes/Domino data from Java.