我有很多属性,所以我想尽可能多地重用。 因此我定义了通用对象:
db-user-generic{
db.host = mymachine
#mssql or oracle
db.type = oracle
db.username = user
db.password= password
mssql {
port = 1433
name = None
url = "jdbc:sqlserver://"${?host}":"${?port}
}
oracle {
port = 1521
serviceNameOrSID = ORCL
url = "jdbc:oracle:thin:@"${?host}":"${?port}":"${?serviceNameOrSID}
}
}
此代码的问题是例如: " JDBC:预言:瘦:@" $&#34 {主机?};:"的 $ {端口?} ":" $ {?serviceNameOrSID}
未定义端口,但已定义db-user-generic.mssql.port。 所以现在inned属性应该知道它的确切位置,这意味着它不能像这样重复使用:
my-db= ${db-user-generic}
my-db= {
mssql {
port= 1111
}
}
因为url属性也应该被覆盖,因为他引用了db-user-generic.mssql.port而不是my-db.mssql.port
任何人都知道如何解决这个问题?