I have the following database models and its properties:User (id, role_id, name, email, password) Role (id, name, description, active)User2Role (user_id, role_id)Customer (id, name, user_id)A User has many roles. A Customer is a User. But a User is not allways a Customer (e. g. Admin)Now, how can i represent it in my domain layer?Example 1:public class User {    private long userID;    private List<Long> roleIds;    private String userName;    private String userEmail;    private String userPassword;}Example 2:public class User {    private long userID;    private List<Role> roles;    private String userName;    private String userEmail;    private String userPassword;}Same goes for customer, should i only save the user-id in customer or create a user object and save the user object in customer?
What is the correct way to design a model and its relations?
mvc;domain model;layers