Программа Java, использующая чистую архитектуру, DAO и репозиторийJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Программа Java, использующая чистую архитектуру, DAO и репозиторий

Сообщение Anonymous »

Я разрабатываю простую консольную программу Java для доступа к базе данных PostgreSQL с помощью JDBC.
Я намерен следовать чистой архитектуре. В этой архитектуре различные области программного обеспечения представлены концентрическими кругами. Зависимости исходного кода могут указывать только внутрь.
Изображение

Внутренние уровни получают доступ к внешним слоям посредством абстракции (интерфейса или абстрактного класса).
Моя программа:

Код: Выделить всё

+ domain
- entity
* Student.java
* Course.java
- repository
* Repository (interface)
* StudentRepository (interface)
* CourseRepository (interface)
+ use case
- StudentUseCase.java
- CourseUseCase.java
+ infra
- data
* ConnectionFactory.java
* DAO (interface)
* StudentDAO.java (interface extends DAO)
* CourseDAO.java (interface extends DAO)
* StudentDAOImpl.java
* CourseDAOImpl.java
* StudentRepositoryImpl.java
* CourseRepositoryImpl.java
Вот мои репозитории:

Код: Выделить всё

public interface Repository {
void save(T type);
void update(T type);
void delete(T type);
Optional findById(int id);
List findAll();
}

public interface StudentRepository extends Repository {
Optional findByEmail(String email);
}

public interface CourseRepository extends Repository {
Optional findByName(String name);
}
СтудентRepositoryImpl и CourseRepositoryImpl вызывают методы DAO.
А вот мои DAO

Код: Выделить всё

public interface DAO {
int save(T type);
void update(T type);
void delete(T type);
Optional findById(int id);
List findAll();
}

public interface StudentDAO extends DAO{
Optional findByEmail(String email);
}

public interface CourseDAO extends DAO{
Optional findByName(String name);
}
Конкретные классы DAO реализуют эти интерфейсы и получают доступ к Postgres, используя чистый JDBC.
Мои сомнения:
Во-первых, эта структура посещает Чистая архитектура? Если нет, может ли кто-нибудь дать мне совет?
Может ли моя программа иметь репозиторий и DAO одновременно?
Заранее спасибо.

Подробнее здесь: https://stackoverflow.com/questions/791 ... repository
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Программа Java, использующая чистую архитектуру, DAO и репозиторий
    Anonymous » » в форуме JAVA
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Программа Java, использующая чистую архитектуру, DAO и репозиторий
    Anonymous » » в форуме JAVA
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • Программа Java, использующая DAO и репозиторий [закрыто]
    Anonymous » » в форуме JAVA
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Программа Java, использующая DAO и репозиторий [закрыто]
    Anonymous » » в форуме JAVA
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Не удалось отправить мой веб-API ASP.NET Core 8 в Azure; Я использую чистую архитектуру, поэтому все мои сервисы зарегис
    Anonymous » » в форуме C#
    0 Ответы
    31 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»