Я пишу компонент Springboot, который просто отвечает за аудит операции входа в систему.
Поскольку компонент отвечает только за запись в базу данных, и не будет операции извлечения (выбора) для таблицы. Я просто использую пакет @Repository
(org.springframework.data.repository.Repository) и реализовал метод с вставкой в оператор для записи в базу данных.
@Repository
public interface AuditRepository extends Repository<UserAudit,String> {
@Modifying
@Query(value = "insert into user_audit(user_id,datetime,function_code,ip_address) values (:user_id,:datetime,:function_code,:ip_address)",nativeQuery = true)
@Transactional
public void recordUserAudit(@Param("user_id")String user_id, @Param("datetime") Timestamp datetime, @Param("function_code") int function_code, @Param("ip_address") String ipAddress);
}
Выполнение этого метода по http-запросу действительно работает.
Я хотел бы написать тесты junit для базы данных H2, которая проверяет, что запись вставлена правильно. для которого я использую тестовый профиль. вставка записи в тестовый метод с зависимостью H2 также, кажется, работает - однако в настоящее время я не вижу способа проверить существование записи.
Любые предложения Как этого добиться?
Ps. Я понимаю, что это возможно либо с @JpaRepository
(org.springframework.data.jpa.repository.JpaRepository), либо с @CrudRepository
, но я бы предпочел не использовать их, так как использование репозитория и другого метода сделает приложение легким.