Java 这会使MVC设计模式无效吗?

Java 这会使MVC设计模式无效吗?,java,model-view-controller,Java,Model View Controller,我想知道,如果让一个本地学生(模型)在我的视图类中使用控制器,是否会使MVC设计模式无效 F.Y.I 我从不将我的学生模型导入view类 控制器 public void saveStudent(int selectedRow, Student studentChanged){ studentList.getStudentList().set(selectedRow, studentChanged); } 看法 。 . . 。 . . 我想要的功能是使用列表详细信息GUI更新列表

我想知道,如果让一个本地学生(模型)在我的视图类中使用控制器,是否会使MVC设计模式无效

F.Y.I

我从不将我的学生模型导入view类


控制器

public void saveStudent(int selectedRow, Student studentChanged){
    studentList.getStudentList().set(selectedRow, studentChanged);
}
看法

。 . .

。 . .



我想要的功能是使用列表详细信息GUI更新列表中的现有学生

只要所有关于更新的逻辑都保留在控制器中,就可以了,最终您可以在视图中添加一些验证,但控制器仍然应该拥有联系持久层的最后决定权。

TL;DR:不管它是做还是不做,“MVC”在不同的框架中对不同的人意味着不同的东西。否则您将如何将数据获取到视图中?我可以在从控制器中提取数据时将其转换为字符串。然后将编辑的字符串发送给控制器,然后将该字符串解析为学生模型。但是我觉得有很多不必要的代码,它们仍然在传递一个模型,只是碰巧被序列化了。
Student currentStudent;
public StudentDetailedUI(StudentCntrl studentCntrIn, int selectedRowIn) {
    studentCntrl = studentCntrIn;
    selectedRow = selectedRowIn;
    if (selectedRow >= 0) {
        currentStudent = studentCntrl.getStudent(selectedRow);
        initComponents();
        parseCurrentStudent();
    } else {
        initComponents();
        parseNewStudent();
    }
}
JButton saveButton = new JButton("Save");
    saveButton.addActionListener((ActionEvent e) -> {
        if (selectedRow != -1){
            currentStudent.setFirstName(firstNameDisplayValue.getText());
            currentStudent.setLastName(lastNameDisplayValue.getText());
            currentStudent.setUniversity(universityDisplayValue.getText());
            currentStudent.setGpa(Double.parseDouble(gpaDisplayValue.getText()));
            StudentDetailedUI.this.studentCntrl.saveStudent(selectedRow, currentStudent);
            StudentDetailedUI.this.studentCntrl.getStudentListUI();
        }
        else {
            StudentDetailedUI.this.studentCntrl.addStudent(firstNameDisplayValue.getText() +", " +lastNameDisplayValue.getText() +", " +universityDisplayValue.getText() +", " +gpaDisplayValue.getText());
            StudentDetailedUI.this.studentCntrl.getStudentListUI();
        }
    });