I seem to find all documentation regarding OOP too basic or too advanced. I'm trying to solve a specific problem and I can't get a nice solution without having to use Singletons or global instances or the such.
I'm trying to create a DB based application: I have a DB with Boxes that are stored in some Location. So I created to tables: Boxes and Locations
BOXES
| id | Name | Location |
------------------------
| 1 | AA | 1 |
| 2 | AB | 2 |
LOCATIONS
| id | Name |
---------------------
| 1 | Garage |
| 2 | Living Room |
When trying to bring this to an Java application, I want to have a Box class that I can instantiate for every box and locations that I have in DB and put them in a list. My question is: how do I design Box and Location Classes?
The immediate approach would be:
class Box {
int id;
String name;
Location location;
}
Class Location {
int id;
String name;
}
But then, how can I operate Locations properly? I still want to manage them from my application and have a tool that would return Location objects given an id. Something like:
Location loc = new Locations.getById(1);
And it would query an something (like n enum) that would return the appropriate, filled, object.
Can anyone point me to resources that would explain this kind of services and solutions?