- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在学习如何使用@DataSourceDefinition
。 documentation给出一个具体的例子
@DataSourceDefinition(name="java:global/MyApp/MyDataSource",
className="com.foobar.MyDataSource",
portNumber=6689,
serverName="myserver.com",
user="lance",
password="secret"
)
问题
如何用这些值替换环境变量?如DB_HOST
、DB_URL
原因是当我将应用程序部署到像 OPENSHIFT
这样的提供商时,我得到的都是用于连接数据库的值。
我不想在我的代码库中对它们进行硬编码。这增加了与特定数据库的耦合,并且无法在运行时切换
有什么想法吗?
最佳答案
如果您想在 OPENSHIFT 以及本地 JBoss 中部署 Java EE 应用程序,那么建议使用 JBoss 配置文件来配置数据源属性,并在 persistence.xml 中使用该数据源 JNDI 名称。
如果您确实不想想要使用应用程序服务器(如 JBoss)特定配置。然后,您可以为 @DataSourceDefinition 注解类编写数据源包装器,并使用外部属性文件更改数据源的值。
引用:http://jdevelopment.nl/switching-data-sources-datasourcedefinition
关于Java EE7 : @DatasourceDefinition, 如何参数化值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26064437/
我正在学习如何使用@DataSourceDefinition。 documentation给出一个具体的例子 @DataSourceDefinition(name="java:global/MyAp
我正在尝试使用 @DataSourceDefinition-Annotation 部署数据源。 当 Wildfly 部署 jar 时,它会抛出 ClassNotFoundException。 我将 m
我能够在 standalone.xml 中配置 MySQL 数据源并且工作正常。但我想使用 @DataSourceDefinition 注释配置 DataSource。 如何在 JBoss AS7 中
我是一名优秀的程序员,十分优秀!