Встречается на собеседованиях • сегодня

Как работает прокси в Spring

В Spring прокси используется для добавления дополнительной логики (AOP, транзакции, кэширование) к бинам без изменения их исходного кода. Spring создает прокси-объекты двух типов:

  1. JDK Dynamic Proxy - используется, если бин реализует интерфейс. Создает прокси на основе интерфейсов.
java
public interface Service {
    void doSomething();
}

@Service
public class ServiceImpl implements Service {
@Override
@Transactional
public void doSomething() {
// business logic
}
}

text

2. **CGLIB Proxy** - используется, если бин не реализует интерфейсы. Создает прокси через наследование класса.

```java
@Service
public class SimpleService {
    @Transactional
    public void process() {
        // business logic
    }
}

Прокси перехватывает вызовы методов и добавляет дополнительное поведение (например, управление транзакциями через @Transactional). Важно помнить про self-invocation - вызов метода внутри того же класса не будет перехвачен прокси.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы