Концепции DTO и DAO и MVC [закрыто]



1) Почему мы используем DTO и DAO, и когда мы должны использовать их. Я разрабатываю GUI программное обеспечение Java для вставки, редактирования, удаления данных. Но я изо всех сил пытаюсь отличить DTO/DAO и Model,View,Controller (MVC) структура? Они похожи, что лучше использовать при взаимодействии с базой данных через Java GUI.



2) Одна вещь, которую мне действительно интересно, является ли это хорошей практикой, чтобы иметь view и Controller в одном класс. Если мы подумаем о Netbeans, вы можете создать GUI класс кадра и добавить компоненты, такие как JButton на кадр, дважды нажав на кнопку приведет вас к actionListener метод (контроллер), который появляется в кадре данные должны быть отображены пользователю (вид). Так они в одном классе. Тогда это полностью противоречит концепции или нет?



<a href="http://www.youtube.com/watch?v=Iwwznm9XSME">Here is what Im talking about</a>


плохая практика, чтобы иметь представление и контроллер в одном классе?

932   1  

1 ответ:

DTO-это аббревиатура для объекта передачи данных, поэтому она используется для передачи данных между классами и модулями вашего приложения. DTO должен содержать только частные поля для ваших данных, геттеров, сеттеров и конструкторов. Не рекомендуется добавлять методы бизнес-логики в такие классы, но можно добавить некоторые методы util.

DAO-это аббревиатура объекта доступа к данным, поэтому он должен инкапсулировать логику извлечения, сохранения и обновления данных в ваших данных хранилище (база данных, файловая система, что угодно). Вот пример того, как интерфейсы DAO и DTO будут выглядеть:

interface PersonDTO {
    String getName();
    void setName(String name);
    //.....
}

interface PersonDAO {
    PersonDTO findById(long id);
    void save(PersonDTO person);
    //.....
}

MVC-это более широкий шаблон. DTO / DAO будет вашей моделью в шаблоне MVC. Он рассказывает вам, как организовать все приложение, а не только часть, ответственную за извлечение данных.

Что касается второго вопроса, если у вас есть небольшое приложение, это полностью нормально, однако если вы хотите следовать шаблону MVC, было бы лучше иметь отдельный контроллер, который будет содержать бизнес-логику для вашего фрейма в отдельном классе и отправлять сообщения этому контроллеру от обработчиков событий. Это позволит отделить бизнес-логику от представления.

Comments

    Ничего не найдено.