среда, 9 марта 2011 г.

Singleton стандартными средствами EJB

Создание Singleton в j2ee-приложениях
EJB позволяет быстро и просто реализовать Singleton, выполняющийся в отдельном потоке. Фактически, мы получаем тот же Stateful-bean, но с постоянным временем жизни. Так как это обычный bean, в нашем распоряжении оказываются механизмы Dependency Injection и аннотации @PostConstuct, @PreDestroy.


Итак, создим простой Singleton:


@Singleton
@Startup
public class ApplicationWatchDog implements Serializable {

@PostConstruct
public void init() {
System.out.println("Singleton успешно стартовал");
}
}



Что же мы сделали?

Аннотации над классом говорят сами за себя:


  • описываемый класс является Синглтоном (присутствует лишь в единственном экземпляре);

  • экземпляр создастся сразу же после развёртывая (deploy) приложения на сервере.

Метод, аннотированный @PostConstruct вызывается сразу же после создания экземпляра класса и обычно служит для настроек деятельности этого сервиса.



В следующей главе рассмотрим применение данного механизма для решения реальных задач.

Комментариев нет:

Отправить комментарий