I would only use one instance of Data for all clients, but I would avoid enforcing this relationship with the singleton
pattern. Search this forum for somne great discussions on this.
As far as "concurrency", all the methods in Data that interact with db.db are synchronized so the point is moot. Don't worry about it. Also, you will not need to modify Data in either case.
-BJ
Here is a link to an article about applying the factory pattern to getting references to remote objects:
RMI Factory Pattern [ March 17, 2003: Message edited by: BJ Grau ]