Potrzebuję właściwości zmiany w mojej aplikacji w czasie wykonywania. Na przykład mam usługę, która wysyła wiadomość e-mail z hasłem resetowania. Wniosek jest ważny 12 godzin. Ale chcę zmienić ten czas na 24 lub więcej w czasie wykonywania. Muszę dać możliwość tej akcji dla administratora.Jak zmieniać wartości właściwości w czasie wykonywania na wiosnę
Mój plik obiekcie
hours.expired=12
Moje usługi
private int hoursExpiredPassword;
public void setHoursExpiredPassword(int hoursExpiredPassword) {
this.hoursExpiredPassword = hoursExpiredPassword;
}
@Override
public ERequests checkRequest(String number, Date date) {
PasswordResetRequest findedObject = passwordResetRequestDao.getObjectByElement(PasswordResetRequest.class, "requestId", number);
if (findedObject == null){
return ERequests.BAD_REQUEST;
}else{
long result = getDateDiff(findedObject.getRequestDate(),date,TimeUnit.HOURS);
if(result >= hoursExpiredPassword){
return ERequests.EXPIRED_REQUEST;
}
}
return ERequests.CORRECT_REQUEST;
}
moja konfiguracja xml wiosna
<bean id="passwordResetRequestService" class="pl.lublin.example.services.servicesDAO.PasswordResetRequestService">
<property name="passwordResetRequestDao" ref="passwordResetRequestDao"></property>
<property name="hoursExpiredPassword" value="${hours.expired}"></property>
</bean>
Czy mogę zmienić tę wartość w jakiś sposób w czasie wykonywania?
Dobra odpowiedź, doskonale pasuje do konfiguracji nie XML. Wystarczy wziąć pod uwagę, że niektóre projekty są w pełni oparte na XML, prawdopodobnie także jego. – Matt
to nie odpowiada na pytanie –
Wiem, że to holywar - xml lub java config lub groovy, ale dlaczego xml jest zły, jeśli działa dobrze? – vladdihoney