gpt4 book ai didi

java - TomEE 自定义属性提供商

转载 作者:行者123 更新时间:2023-12-02 10:31:09 31 4
gpt4 key购买 nike

我正在 TomEE 8 中运行我的应用程序。我想从我的数据库中读取一些属性并将其传递给应用程序。

我看到了 https://rmannibucau.wordpress.com/2014/08/06/tomee-and-more-advanced-resource-configuration/ 中的一个例子。可能是它太旧了。它不工作。部署应用程序时,它需要资源类型。但示例没有“输入资源”标签。

<Resource id="..." properties-provider="com.foo.MyPropertiesReader" />

从数据库将自定义属性加载到应用程序的最新/正确方法是什么?

最佳答案

我相信罗曼试图在他的例子中简洁。在他的例子中,可以推测他使用的是 javax.sql.DataSourceDataSource 。尽管如此,这适用于任何类型的资源,甚至 custom resources 。您还可以查看已经实现的实现:

在您提到的页面中,Romain 还指出您的类可以实现 org.apache.openejb.api.resource.PropertiesResourceProvider ,或提供 Properties provides();方法。

这是一个小例子:

org.superbiz.provider.MyPropertiesReader.java

package org.superbiz.provider;

import org.apache.openejb.api.resource.PropertiesResourceProvider;
import org.apache.openejb.testng.PropertiesBuilder;

import java.util.Properties;

public class MyPropertiesReader implements PropertiesResourceProvider {
public Properties provides() {
return new PropertiesBuilder()
.p("JdbcDriver", "org.hsqldb.jdbcDriver")
.p("JdbcUrl", "jdbc:hsqldb:mem:moviedb")
.build();
}
}

src/main/webapp/WEB-INF/resources.xml

<resources>
<Resource id="movieDatabase"
type="DataSource"
properties-provider="org.superbiz.provider.MyPropertiesReader"/>
</resources>

这些是我希望能帮助您消除疑虑的关键片段。数据源的实现留给您编写代码。 :)

关于java - TomEE 自定义属性提供商,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53607317/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com