创建适合Python和Java的配置文件的“标准”方法

我的应用程序是100%用纯Python开发的。 我发现非常有用且易于创建扩展名为.py的配置文件,而不是简单地在每个代码中加载它。 像这样的东西:

 ENV = 'Dev' def get_settings(): return eval(ENV) class Dev(): ''' Development Settings ''' # AWS settings aws_key = 'xxxxxxxxxxxxx' aws_secret = 'xxxxxxxxxxxxxxxxx' # S3 settings s3_bucket = 'xxxxxxxxxx' ... ... 

而且在我的代码中我只导入这个文件并使用设置,这样我就有一个易于管理的文件,其中包含我需要的所有参数。

最近我不得不将部分代码移到Java上。 而现在我正在努力配置。

题:

创建可以从两种语言轻松访问的配置的“标准”方法是什么? (我的Java技能非常有限,如果你能用五个我在Java中的一个简单例子那就太棒了)

看看Python中的ConfigParser

此文件的语法如下所示:

 [Section] my_option = 12.2 my_option2 = other_value [Section2] my_voption = my_value 

你这样读了:

 import ConfigParser config = ConfigParser.ConfigParser() config.read('example.cfg') config.getfloat('Section', 'my_option') # returns 12.2 

它适用于几种类型,如果找不到类型,可以在Python中使用eval函数。 找到与Java相当的东西应该不会太难。 甚至使用Java解析这个文件应该不会太难。

使用标准配置文件:例如XML或.properties。

对于XML,您可以在Java中使用JDOM ,在Python中使用minidom 。

对于.properties,Java通过类属性处理这个nativaly,Python可以通过ConfigParser处理这个问题