Как я могу определить, использует ли моя служба соединение БД?JAVA

Программисты JAVA общаются здесь
Anonymous
Как я могу определить, использует ли моя служба соединение БД?

Сообщение Anonymous »

У меня есть приложение Spring Boot с использованием данных Hibernate и Spring JPA. Чтобы управлять транзакциями DB, я использую аннотацию org.springframework.transaction.annotation.transactional вокруг служб.

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

@Service
@Transactional(readOnly = true)
public class UserService {

// Needs a DB transaction and definitely gets one
public Page getUsers(Pageable pageable) {
...
}

// Should not use a DB transaction
@Transactional(propagation = Propagation.NEVER)
public WhoAmI whoAmI() {
...
}
}
< /code>
UserService
вызывается только непосредственно из контроллера. Это не вызвано другой службой, которая уже находится в транзакции (которая должна применяться при распространении. Неужели ).
на основе некоторых трассировки стека, которые я видел, кажется, что мой метод Whoami может ждать на DB, даже если он никогда не должен использовать. Propagation.never) эквивалент запуска метода в классе, который не аннотирован с @TransActional ? И означало бы это, что он никогда не пытается получить соединение DB?>

Подробнее здесь: https://stackoverflow.com/questions/795 ... connection

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