栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在Spring的运行时更改属性值

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在Spring的运行时更改属性值

只需远离xml配置,就快要到2017年了。

@Servicepublic class PasswordResetRequestService {@Value("${hours.expired:12}") private int hoursExpiredPassword;@Autowiredprivate PasswordResetRequestDao passwordResetRequestDao;public void setHoursExpiredPassword(int hoursExpiredPassword) {    this.hoursExpiredPassword = hoursExpiredPassword;}@Overridepublic 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;   }}

使用@Value,您将从属性文件中获取hours.expired值,如果没有值,默认值为12。您还可以在运行时调用setHoursExpired并设置新值,并将该功能向管理员公开。

这对于一次操作很方便。如果您想让管理员永久更改密码的过期时间,我将在mysql或您正在使用的任何数据库中保留hours.expired值。

编辑:回答完全有效的@matt备注。如果是这种情况,则不能选择使用Java
confing。对于自定义行为,您只需将XML定义的bean自动连接到服务中,然后执行所需的任何逻辑即可。

@Autowiredprivate pl.lublin.zeto.zetoRA.services.servicesDAO.PasswordResetRequestService passwordResetRequestService;


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/470009.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号