Wnen using just JDBC, I typically have to think about the following problems. I don't think too hard and just make something work, but I am wondering how people handle these without an ORM or other library.
Eager vs Lazy Loading: Do you just have a single domain object and have the dependent children be null and make it the responsibility of the caller to recall the DAO to load these children when needed? Or do you just use multiple transfer objects for the same domain object? This also means that you would have to have maintain separate SQL queries for the eager case and the lazy case.
Domain objects and transfer objects: Do you even need both domain objects and transfer objects? For the above case, it might be easier to accomplish with different representations of the domain objects via transfer objects. Finally, if using transfer objects, would related objects be "detached"? In other words, if you have a class Parent with multiple Children, would Parent have an instance of a Collection of Children, or would these be separately requested?
Assigning id's: What I have done so far is to bundle in a transaction and then assign the id's at the end. However, this requires a public function to set the id...
Cascading: I guess the only choice is to do this manually...
There are more, but this is all I can think of now.
EDIT: As to why I ask this question, you know how some development teams are "afraid" to use ORM's or don't like them for whatever reason (usually because they don't understand them), so sometimes JDBC is your only choice...