Data Access Object - implementing table joins?
I'm using the DAO pattern from the book, with some increased functionality (like allowing the fetch to accept multiple columns for the select, or a composite primary key, allowing the fetch to accept a parameter for the operator, allowing "where param1 = arg1", "where param1 < arg1", etc, and adding an insert method)
I think it would make sense to fetch from a joining of tables, but I'm at a loss as to how to implement this in a properly abstract manner, which class to implement it in, etc. I have the baseDAO class, and a class corresponding to each table in my database that extends baseDAO, in much the same way as the book shows in the code example, with the additional functionality described above.
Has anyone done this?