是否可以在AEM 6中的OSGI Bundle的Service类上使用带注释@PostConstruct
或@PreDestroy
的方法,因为我计划为数据库连接创建单独的包,我将使用这两个注释的方法是在@PostConstruct
上打开数据库连接并关闭连接并执行提交或回滚@PreDestroy
。如果不可能有任何其他方式或解决我正在计划的方法吗?
答案 0 :(得分:3)
OSGi使用一组不同的注释来处理捆绑包的激活和停用。
这些是来自$_POST
@Activate
和@Deactivate
注释
例如:
org.apache.felix.scr.annotations
有关详细信息,请查看OSGi wiki
但是,我认为您不应该在捆绑包的整个生命周期中保持数据库连接打开。只需在你真正需要的时候打开并关闭它。
激活捆绑包时应创建的内容不是连接,而是能够构建和维护连接池的对象。
谷歌围绕着DataSourceFactory
interface
另外,我认为AEM已经提供了一组JDBC连接器OOTB。在深入开发自定义解决方案之前,请务必检查Adobe documentation on the subject。