对于一个完整的工程来说,如果所有的配置都指定到代码里,就会造成:
- 1、代码非常的混乱
- 2、修改配置的时候,需要修改很多的地方
- 3、数据库相关信息直接暴露在代码里,不安
综上所述:需要一个配置文件工具类,来专门获取配置文件的内容。
- 第一、
Typesafe
的Config
库,纯Java写成、零外部依赖、代码精简、功能灵活、API友好。支持Java properties、JSON
、JSON
超集格式HOCON
以及环境变量。它也是Akka
的配置管理库。 - 第二、默认加载classpath下的
application.conf,application.json
和application.properties
文件。通过ConfigFactory.load()
加载。 - 第三、可以通过
ConfigFactory.load("config.properties")
指定配置文件名称,加载配置
依赖
com.typesafe
config
1.2.1
将标签模型中从MySQL读取标签数据和从HBase读写画像数据的数据库配置信息存放属性配置文件,便于管理和修改,属性文件 config.properties
,内容如下:
# model config
tag.model.base.path=/apps/tags/models/
# mysql config
mysql.jdbc.driver=com.mysql.jdbc.Driver
mysql.jdbc.url=jdbc:mysql://mysql-host:3306/?
useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
mysql.jdbc.username=root
mysql.jdbc.password=123456
# profile table config
profile.hbase.zk.hosts=data01
profile.hbase.zk.port=2181
profile.hbase.zk.znode=/hbase
profile.hbase.table.name=tbl_profile
profile.hbase.table.family.user=user
profile.hbase.table.family.item=item
profile.hbase.table.family.common.col=tagIds
profile.hbase.table.rowkey.col=userId
# hdfs config
fs.defaultFS=data01:8020
fs.user=root