Struktury danych dla projektu w Springu

0

Robię projekt ucząc się Springa, chcę wykonać coś na zasadzie dziennika elektronicznego do szkoły.
Zastanawiam się jednak, czy dobrze wybrałem typy danych żeby to ze sobą współgrało.
Tak wyglądają moje klasy :

Student

package pl.bartosz.dziennik.model;
import java.util.List;
import java.util.Map;

public class Student extends User
{
private Map<Subject, List<integer>> subjectsWithMarks;
}

2.Subject

package pl.bartosz.dziennik.model;

import java.util.List;

/**
 * Created by Bartosz on 2017-02-22.
 */
public class Subject
{
    private int id;
    private String subjectName;
    private Teacher teacher;
    private List<Student> students;
}

Teacher

package pl.bartosz.dziennik.model;

import java.util.List;

/**
 * Created by Bartosz on 2017-03-21.
 */
public class Teacher extends User
{
    private List<Subject> subjects;
}

User

package pl.bartosz.dziennik.model;

/**
 * Created by Bartosz on 2017-03-21.
 */
public abstract class User
{
    protected int id;
    protected String name;
    protected String lastName;
    protected String login;
    protected String password;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    public String getLogin() {
        return login;
    }

    public void setLogin(String login) {
        this.login = login;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

Zastanawiałem się, jak to wszystko połączyć, żeby np. logując się na nauczyciela, mieć przypisane jego przedmioty którymi koordynuje, natomiast żeby uczeń miał przypisane przedmioty w których uczestniczy oraz oceny itp.
Chcę później podpiąć bazę danych, i zastanawiam się, czy przyjmując np. listy, pola wewnątrz klasy typu innych klas będzie w porządku aby to zapisywać, czy powinny to być raczej dane typu int, string itd, a później łączy się to jakimiś kluczami jak to w bazach danych i dzięki temu wszystko jest odpowiednio połączone tak jak wyżej to założyłem?
Może macie jakieś inne propozycje? Na razie jestem na etapie skonfigurowania samego Springa, i jednego prostego kontrolera strony głównej.
Dzięki za wszystkie sugestie.

0

Proponuje żebyś na początek wziął coś łatwiejszego

0

@scibi92: łatwiejszego, czyli łatwiejszy projekt, czy zmienne?

0

Łatwiejszy projekt

1 użytkowników online, w tym zalogowanych: 0, gości: 1