Tôi có một tập tin cấu hình mùa xuân trong đó bao gồm các yếu tố sau:Tôi có thể mặc định thuộc tính hệ thống cho hàm tạo-arg trong tệp cấu hình mùa xuân không?
<context:property-placeholder location="classpath:default.properties"/>
<bean id="theVar" class="java.lang.String">
<constructor-arg value="${varName}"/>
</bean>
"VARNAME" hiện đang chuyển từ các thuộc tính tập tin để sở hữu một hệ thống. Nó đang được thêm vào khi tôi bắt đầu một Maven xây dựng:
mvn clean install -DvarName=data
Tôi muốn cũng chạy build của tôi mà không chỉ định VARNAME:
mvn clean install
Có một số cách để mặc định VARNAME trong cấu hình mùa xuân của tôi? Mặc dù điều này không làm việc, một ví dụ về khái niệm về những gì tôi đang tìm kiếm là:
<bean id="theVar" class="java.lang.String">
<constructor-arg value="${varName}" default="theDefaultValue"/>
</bean>
Có cần phải là thuộc tính hệ thống không? Nó có thể được chỉ định trong một tệp khác không? –
Nó cần phải năng động tại thời gian xây dựng. Tôi đang mở để gợi ý về cách thức. Tôi cần phải xác định các giá trị khác nhau cho varName khi tôi gọi một build, và tôi cũng cần phải gọi một build mà không cần chỉ định varName. – TERACytE
Việc chỉ định nhiều tệp thuộc tính có giúp ích không?Phần tử 'location' hỗ trợ nhiều tệp được phân tách bằng dấu phẩy (,). Bạn có thể chỉ định một tệp khác có 'mặc định hệ thống' trong đó và nếu nó không thể được giải quyết bởi 'classpath: default.properties', thì nó sẽ cố gắng giải quyết bằng tệp thuộc tính tiếp theo. –