Сегодня я собираюсь использовать JPA на простом примере
На самом деле, для моего стороннего проекта…
Кстати, я начну писать кратко объяснение JPA
Что такое ЯПА?
JPA — это техническая спецификация.
JPA означает Java Persistence API. Это интерфейс, который определяет, как Java-приложения используют реляционные базы данных. просто интерфейс
Проще говоря, JPA похож на киоск
Это похоже на простое оформление заказа с помощью кнопок вместо использования длинных заклинаний< br /> Итак, JPA объявлен interface
Теперь давайте воспользуемся JPA для реализации членства
Я использую vo, dto, entity для создания проекта
Добавить зависимости
pom.xml <!-- JPA --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> <version>2.6.4</version> </dependency>
После подключения БД измените файл конфигурации
application.yml spring: jpa: open-in-view: false generate-ddl: true show-sql: true hibernate: ddl-auto: update
Теперь создайте Entity. Это похоже на стол.
Затем используйте этот объект
Создайте интерфейс с именем UserRepository.
Это метод сохранения, поэтому вам не нужно его переопределять
Посмотрите на структуру, наследуйте и используйте
Формат похож на CrudRepository‹Entity, Id type of Entity›
И сделайте так, чтобы DTO и VO
Использование этого класса в соответствии с условиями
были примерно одинаковыми.
Я поставлю зашифрованный пароль в DTO
И создайте контроллер и службы, необходимые для запроса
Интерфейс службы опущен
Сохранить в БД с помощью метода сохранения ( userRepository.save(pEntity) )
Изменен DTO на Entity с помощью ModelMapper
Есть нет Setter в Entity, добавьте параметры в ModelMapper
ModelMapper mapper = new ModelMapper(); mapper.getConfiguration() .setFieldAccessLevel(Configuration.AccessLevel.PRIVATE) .setFieldMatchingEnabled(true);
Наконец, создайте контроллер
Как и ожидалось, это также преобразует RequestUser в DTO.
Теперь проверьте, имеет ли БД значение
можно увидеть зашифрованный пароль и введенное значение
Пожалуйста, скажите, если я ошибаюсь
Спасибо!