评估 Spring 表达式语言 (SpEL) 中的属性

2024-01-12

我们的服务有一个根据属性文件安排的进程,读取属性刷新间隔毫秒。它的值通过以下配置直接注入到 Quartz 触发器中:

<bean name="trigger"
    class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean "
    p:repeatInterval="${refreshIntervalMillis}"> 
...
</bean>

但是,安装此服务的管理员以小时/天为单位进行思考,因此为了让他们更轻松,我们将其更改为:

  1. Renamed 刷新间隔毫秒 to 刷新间隔分钟数
  2. 将上面的代码更改为以下内容:


p:repeatInterval="#{ 1000 * 60 * T(java.lang.Integer).valueOf(@configurationProperties['garbageLevelWatcher.refreshIntervalMinutes'])}"
  

注意:属性对象作为名为“configurationProperties”的 bean 公开

是否有更简单的语法来完成相同的任务?

Thanks,


"#{T(java.util.concurrent.TimeUnit).MINUTES.toMillis( @configurationProperties['garbageLevelWatcher.refreshIntervalMinutes'])}"

EDIT:

Or...

<context:property-placeholder properties-ref="configurationProperties"
<util:constant id = "MINUTES" static-field="java.util.concurrent.TimeUnit.MINUTES" />

and

"#{@MINUTES.toMillis(${garbageLevelWatcher.refreshIntervalMinutes})}"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

评估 Spring 表达式语言 (SpEL) 中的属性 的相关文章

随机推荐

  • 使用 pyspark 进行分层采样

    我有一个火花DataFrame其中有一列具有很多零而且很少 仅占0 01 我想抽取一个随机子样本 但要进行分层 以便保持该列中 1 与 0 的比例 可以在 pyspark 中做吗 我正在寻找一个非标量解决方案并基于DataFrame是而不是
  • 如何使用 jquery.load() 在内容之前加载页眉和页脚

    我使用以下方法将页眉和页脚调用到不同的页面中jquery load 方法 但在加载页面时 页脚和页眉有延迟 那是当我运行这个 我的内容 之后 仅显示标题 我想同时显示页眉 内容 页脚加载 你能帮我么 div div
  • R 中的隐式变量引用

    我该如何评价c 2 通过致电z a lt c 1 2 3 b lt c 4 5 6 c lt cbind a b z lt c 2 eval z 不管用 可能是下面这样 eval parse text z
  • 如何通过部分行键过滤HBase的Scan?

    我有带有行键的 HBase 表 其中包含文本 ID 和时间戳 如下所示 string id1 1470913344067 string id1 1470913345067 string id2 1470913344067 string id
  • 获取 YouTube 中的音乐流派

    当我们查看 YouTube 页面并单击 音乐 时 我们可以看到不同流派的歌曲 例如 说唱 摇滚 乡村 等 如何使用 YouTube API 检索此数据 按类型分类的视频列表 实现此目的的一种方法是使用 Topics API 与 API V3
  • Py安装程序问题

    我使用 pyinstaller 创建了 python 程序的 exe 版本 但是当我尝试运行我的应用程序时 那个 exe 我收到这样的错误 问题可能是由什么引起的 提前致谢 None
  • 在 Django 中获取 QuerySet 的值

    我怎样才能获得价值course code在这个查询集中
  • 如何以编程方式使用 PIN 码登录 Windows

    在 Windows 8 中 引入了一种针对非域用户的新身份验证方法 使用控制面板中设置的 PIN 目前我们的应用程序支持使用预先保存的密码登录 WindowsLogonUserW 现在还需要 PIN 码的支持 我们如何从 NET 应用程序直
  • proxy_set_header为什么是Host $host; nginx 1.8.0 不再工作?

    I used proxy set header Host host 将主机标头设置为原始请求主机 在 nginx 1 4 1 中 这工作正常 现在升级到 1 8 0 后 我得到的是本地 IP 而不是浏览器传递的主机 为什么会发生这种情况以及
  • Flutter 未来建设者名单

    我在理解未来构建器如何在颤振中工作时遇到一些困难 我想从未来的调用中传递一个字符串列表 并且我想在 SingleChildScrollView 中显示它们 问题是当我访问snapshot data我无法访问列表的元素 因为在我的 Singl
  • ltrace(库跟踪工具)如何工作?

    如何ltrace https www man7 org linux man pages man1 ltrace 1 html work 它如何找出程序调用了哪些库函数 是否存在所有对库函数的调用都经过的公共代码路径 或许ltrace在这个公
  • Intellij idea - 如何始终显示方法参数名称

    我在几个演示中看到始终显示参数名称的功能 如图所示 请问我怎样才能打开这个功能 设置 gt 编辑器 gt 常规 gt 外观 gt 显示参数名称提示配置 gt 在多个参数具有相同类型的情况下显示非文字
  • 在 SQL 中,如何获取表中列值最低的所有行?

    我是 SQL 新手 我正在使用此查询来查找表的字段权重中的最小值 SELECT product id MIN weight FROM table WHERE 1 它确实显示了一个具有最小值的字段 但只有一个 但我有很多产品的最小重量相同 有
  • Python:带有生成器的给定集合的幂集[重复]

    这个问题在这里已经有答案了 我正在尝试在 Python 中构建给定集合的子集列表发电机 说我有 set 1 2 3 作为输入 我应该有 set 1 2 3 set 2 3 set 1 3 set 3 set 1 2 set 2 set 1
  • 如何从 &[u8] 转换为 Vec

    我试图简单地将切片转换为向量 以下代码 let a 0u8 let b Vec
  • Node.js 脚本无法使用 systemctl 启动

    我需要使用 systemctl 从远程计算机自动运行我的 node js 脚本 我已经制作了一个 service 文件并将其放入 etc systemd system 这是 service 文件 Unit Description lapor
  • ProgressDialog 现已弃用 [重复]

    这个问题在这里已经有答案了 Android O 的进度对话框现已弃用 对此有什么解决办法吗 我收到以下警告 在我的项目中 Warning 6 20 Progress Dialog is deprecated Deprecated in Ja
  • 在 ASP.NET 中流式传输大文件上传

    我有一个 ASP NET MVC 应用程序 其中有一个允许用户上传文件的页面 这些文件将有数百兆字节 我在客户端使用 FineUploader 如果浏览器支持 它将使用 FileAPI XHR 否则将回退到 Iframe form 并使用
  • 如何使用 WordPress 增加 CPanel 中的 Max_file_upload_size

    我正在使用 VPS 托管 因为我有 CPanel 登录详细信息 我安装了 WordPress 并且我正在尝试导入从上一个网站导出的一些帖子 但是我收到了 Max file Upload size 超过 2M 之类的错误 我该如何更改最大文件
  • 评估 Spring 表达式语言 (SpEL) 中的属性

    我们的服务有一个根据属性文件安排的进程 读取属性刷新间隔毫秒 它的值通过以下配置直接注入到 Quartz 触发器中