public interface CrudRepository{
Test createThis(Test t);
}
@Repository
public class TestCrud implements CrudRepository{
public Test createThis(Test t)
{
//implementation
}
Теперь интерфейс сервиса и реализация
public interface CrudService{
Test createThis(Test t);
}
@Service общественного класса TestService реализует CrudService {
@AutoWired
CrudRepository crudR;
public Test createThis(Test t){
crudR.createThis(t)
}
}
Когда мы используем для разработки веб-проекта с пружиной, сначала мы выполняем интерфейс, а затем реализуем в репозитории, чем , мы делаем снова интерфейс и из репозитория мы реализуем эту услугу. Опять же, почему мы не используем напрямую репозиторий в контроллере, но мы это делаем? Я надеюсь, что кто-то может мне объяснить
вы можете переключаться из одного хранилища в другое .. так же вы можете переключаться с одного сервиса на другой. в чем проблема? – SMA
Он изолирует ваши контроллеры от хранилища, что позволяет вам, например, отключить технологии баз данных без перезаписи всего бэкэнд-приложения. – jonrsharpe