Вот некоторая информация, которая должна помочь, без предоставления вам точного кода:
По сути, причина использования шаблона проектирования MVC состоит в том, чтобы отделить логику от пользовательского интерфейса. Три части можно кратко описать как:
Модель: Основная логика программы.
Представления: Биты пользовательского интерфейса, которые используют модель (логику) для отображения правильной информации.
Контроллер (ы): Проще всего думать о контроллере как о ActionListeners для вашего View.
«Модель» и «Представление (я)» почти всегда являются отдельными классами; «Контроллер» часто включается в представления, так как иногда он просто состоит из добавления ActionListeners.
Вот пример очень простого приложения с использованием MVC для создания простой программы чище. Предположим, у нас есть базовый калькулятор, определенный следующим интерфейсом:
public class Calc {
public int add(int[] nums) {}
public int sub(int[] nums) {}
public int mult(int[] nums) {}
public double div(int[] nums) {}
}
И графический интерфейс для этого калькулятора, CalcGUI. Итак, наша цель - отделить модель от представления. Мы могли бы использовать MVC и что-то вроде этого ...
public class CalcGUI extends JFrame {
private Calc model;
private JTextField result;
public CalcGUI(Calc model) {
this.model = model;
// Random GUI setup stuff
result = new JTextField(10);
... whatever else you need
// Add controllers
}
// A sample view method that uses the model for logic
public void add() {
result.setText(model.add(user's numbers));
}
}
Обратите внимание, что графическому интерфейсу не нужно использовать какие-либо логические аспекты функциональности программы (математические операции). Объект «модель» Calc выполняет всю логику для GUI (представление); все, что нужно сделать графическому интерфейсу, - это вызвать методы модели и использовать ее возвращаемые значения для отображения правильной информации для пользователя.
Еще одна важная вещь, которую стоит отметить, - это конструктор CalcGUI. Обратите внимание, как это происходит в объекте «Calc». Поскольку объекты являются указателями в Java (на которые ссылается адрес памяти), всегда будет использоваться один и тот же объект «Calc». Это важно, если вам нужно хранить информацию в вашей модели (не в этом приложении, а почти всегда в «реальном» приложении). \
Некоторые полезные ссылки для изучения MVC:
http://www.enode.com/x/markup/tutorial/mvc.html
http://www.roseindia.net/struts/struts/struts2.2.1/mvcdesignpattern.html
http://cristobal.baray.com/indiana/projects/mvc.html
Надеюсь, это помогло!