какая часть функции должна идти на уровне DAO, а какая на уровне службы - PullRequest
0 голосов
/ 22 марта 2011

Изначально у меня был весь DAO в сервисном слое.Но чтобы идти по правильному пути, я делаю отдельный уровень DAO, но меня немного смущает то, что происходит в DAO, а какие на уровне обслуживания

У меня была эта функция на уровне обслуживания

public void confirmUser(String id)
{
      logger.debug("Confirming existing person");
      Session session = sessionFactory.getCurrentSession();
      String query = "FROM Registration WHERE uuid=:myuuid";
      Query query2 = session.createQuery(query);
      query2.setString("myuuid",id);
      Registration person = (Registration) query2.uniqueResult();
      person.setConfirmed(true);
      session.save(person);

}

Теперь я хочу спросить, работает ли эта функция так же, как в DAO, или что-то останется на уровне сервиса

1 Ответ

2 голосов
/ 22 марта 2011

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

Таким образом, validUser (id) будет в службе и будет вызывать setConfirmed.(..) для пользователя.

DAO будет иметь getUserById (id) и saveOrUpdateUser (User) - или что-то подобное, в зависимости от ваших потребностей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...