Возможно ли использовать метод с аннотациями @PostConstruct
или @PreDestroy
в классе обслуживания пакета OSGI в AEM 6, поскольку я планирую создать отдельный пакет для подключение к базе данных и способ использования этих двух аннотаций - открыть соединение с базой данных на @PostConstruct
и закрыть соединение и выполнить для фиксации или откат на @PreDestroy
. Если это невозможно, есть ли какой-либо другой способ или работать вокруг подхода, который я планирую?Java Annotations (Postconstruct and PreDestroy) на AEM/CQ5
ответ
OSGi использует другой набор аннотаций для обработки активации и деактивации пакета.
Это @Activate
и @Deactivate
аннотаций из org.apache.felix.scr.annotations
Например:
@Component
public class Foo implements Bar {
@Activate
void activate(ComponentContext ctx) {
System.out.println("Activating bundle: " + ctx.getUsingBundle());
}
@Deactivate
void deactivate(ComponentContext ctx) {
System.out.println("Deactivating bundle: " + ctx.getUsingBundle());
}
}
Для получения дополнительной информации ознакомьтесь с OSGi wiki
Однако, я не думаю, что вы должны держать соединение с базой данных открыто на протяжении всего жизненного цикла пакета. Просто откройте и закройте его ad-hoc, когда вам это действительно нужно.
Что нужно создать при активации пучка, это не соединение, а объект, способный создавать и поддерживать пул соединений.
Google вокруг для DataSourceFactory
interface
Кроме того, я думаю, что AEM уже предоставляет набор JDBC разъемы OOTB. Обязательно проверьте Adobe documentation on the subject перед погружением в разработку настраиваемого решения.
- 1. Отметки Spring @PreDestroy и @PostConstruct
- 2. Xpages @PreDestroy
- 3. Являются ли аннотации метода Spring @PostConstruct и @PreDestroy формой АОП?
- 4. Mock object and Spring annotations
- 5. Добавить Java Annotations programatically
- 6. Java Annotations Logic
- 7. Java Annotations Reflection Ordering
- 8. Java Annotations простая ошибка
- 9. java ejb3 @PostConstruct
- 10. Без использования конфигурации файла xml, как я могу использовать @PostConstruct и @PreDestroy?
- 11. @PreDestroy не вызывается для Runnable
- 12. Требуется ли <context: annotation-config> для аннотации @Resource, @PostConstruct и @PreDestroy?
- 13. Невозможно установить кук на PostConstruct
- 14. Spring @PreDestroy метод
- 15. Ресурс недоступен в методе @Singleton @Predestroy
- 16. doctrine 2 Annotations and Zend Framework underscore convention
- 17. Почему @PostConstruct вызывает дважды на @Singleton
- 18. Clustered Annotations
- 19. Почему @PostConstruct не работает?
- 20. метод EJB 3.1 Singleton Session Bean @PreDestroy не называется
- 21. Развертывание новой версии приложения Spring для ElasticBeanstalk, @PreDestroy не вызывается?
- 22. Swagger Annotations with Spring
- 23. EJB Pooling vs Thread-safe и @PreDestroy
- 24. Share class with annotations
- 25. Зачем использовать @PostConstruct?
- 26. Почему PostConstruct не вызывается?
- 27. EJB @PostConstruct not called
- 28. Spring Inheritance Autowired Annotations
- 29. Matplotlib invisible annotations
- 30. Slow ehcache spring annotations