I've just finished a book on MySQL and I'm in the infantile stages of learning to couple that with Java. I know that the technology I need to learn is called JDBC and that it essentially allows you to execute programmatically created SQL statements. I plan on making a database centered records keeping and management program as a long term project. I'm not quite sure how to fit in a program structure to interact with the database.
Why is the typical way this is done, in terms of high level organization?
How do I go about organizing classes to put together SQL statements and work with them and trade info back and forth with the program and handle results?
What are some do's and more importantly, what are some don'ts?