Зачем нам нужен Preparable Interface в Struts2?

У нас есть перехватчик, у нас есть собственный перехватчик, в котором мы можем делать все, что хотим, до или после выполнения нашего действия.
Тогда зачем использовать интерфейс Preparable и реализовывать для него метод подготовки?
это еще один вариант или есть какая-то конкретная цель сделать так?


person NIVESH SENGAR    schedule 14.02.2012    source источник


Ответы (2)


Интерфейс Well Preparable действует в сочетании с Prepare Interceptor. Этот интерфейс имеет один метод, определенный prepare(), и, как следует из его названия, этот метод отвечает за то, чтобы действие могло подготовиться.

Подготовить перехватчик вызывает prepare() для действий, которые реализуют Preparable. Этот перехватчик очень полезен в любой ситуации, когда вам нужно обеспечить выполнение некоторой логики до запуска фактического метода выполнения. Поэтому, если вы видите, что это какой-то тип if init для вашего класса действий, и он гарантирует, что до выполнения действия или любого другого метода получить вызов, этот метод подготовит ваш метод выполнения к нормальной работе.

Если вы увидите определение стека по умолчанию в ядре, вы узнаете, что этот перехватчик вызывается перед params или перехватчиком рабочего процесса, что указывает на его назначение.

Обычно это используется для запуска некоторой логики для загрузки объекта из базы данных, чтобы при установке параметров их можно было установить для этого объекта. Для получения подробной информации ознакомьтесь с документом по подготовке перехватчика, чтобы узнать, как он тесно работает с интерфейсом Preparable. Короче говоря, подготовка перехватчика вступит в действие только тогда, когда действие реализует Preparable.

Prepare-Interceptor

person Umesh Awasthi    schedule 14.02.2012

Подготовленный интерфейс гарантирует, что если используемый объект уже находится в стеке значений, нет необходимости запрашивать базу данных, она заполняет свойства формы, используя существующий объект в стеке значений.

person krishan kansal    schedule 22.07.2015