我厌倦了所有这些无聊的样板代码来解析应用程序配置,如数据库连接,工作目录,API端点等等.Spring IoC看起来不错,但这会强制我的应用程序的用户修改XML文件,只是为了编辑数据库URL等等.这也可能在XML文件中非常分散,其中所有其他布线都会出现问题.
允许最终用户配置服务(不在应用程序服务器内运行)的最佳技术是什么?你们用的是什么?
cle*_*tus 10
使用Spring,在XML中进行显式连接,自动布线或其某种组合,以定义"常量"配置,然后将属性文件中的其余部分外部化.数据库凭据就是一个常见的例子.
有关此基准示例,请参阅Spring和Ibatis教程.精简版:
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="classpath:database.properties"/>
</bean>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${database.class}"/>
<property name="url" value="${database.url}"/>
<property name="username" value="${database.username}"/>
<property name="password" value="${database.password}"/>
</bean>
Run Code Online (Sandbox Code Playgroud)
与database.properties(在类路径中):
database.username=scratch
database.password=scratch
database.class=oracle.jdbc.OracleDriver
database.url=jdbc:oracle:thin:@localhost:1521:XE
Run Code Online (Sandbox Code Playgroud)
小智 5
您可以将应用程序配置存储在属性文件中,并使用PropertyPlaceholderConfigurer加载这些属性.
因此,在applicationContext文件中,您可能有:
<bean id="dataSource" class="com.x.y.z.DataSource">
<property name="url" value="${dataSource.url}" />
</bean>
Run Code Online (Sandbox Code Playgroud)
dataSource.url属性将从属性文件中加载.
这是我在我正在使用的应用程序中使用的,它使配置更容易!
| 归档时间: |
|
| 查看次数: |
6593 次 |
| 最近记录: |