在这个例子中,您将学习如何使用Spring Expression Language访问类范围的方法或常量。要访问类范围的方法或常量T(),例如,您将需要使用Spring EL的运算符T(java.lang.Math)。该运算符将使我们能够访问给定类上的静态方法和常量。作为示例,我们可以Math.PI在Spring EL中访问like T(java.lang.Math).PI。

就像访问静态常量一样,我们也可以以相同的方式访问静态方法。例如,我们可以Math.random()像这样在Spring EL中调用该方法T(java.lang.Math).random()。

现在,让我们看看如何在spring配置文件中执行这些操作。在这种配置中,我们创建一个名为绿豆myBean具有如属性randomNumber,pi和name。<?xml  version="1.0" encoding="UTF-8"?>

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

这里是运行演示的spring配置的bean类和应用程序类。package org.nhooo.example.spring.el;

public class MyOtherBean {

public static final String BEAN_NAME = "MyOtherBean";

private String randomNumber;

private String pi;

private String name;

public void setRandomNumber(String randomNumber) {

this.randomNumber = randomNumber;

}

public String getRandomNumber() {

return randomNumber;

}

public void setPi(String pi) {

this.pi = pi;

}

public String getPi() {

return pi;

}

public void setName(String name) {

this.name = name;

}

public String getName() {

return name;

}

}package org.nhooo.example.spring.el;

import org.springframework.context.ApplicationContext;

import org.springframework.context.support.ClassPathXmlApplicationContext;

public class SpELStaticDemo {

public static void main(String[] args) {

ApplicationContext context =

new ClassPathXmlApplicationContext("spring-spel-static.xml");

MyOtherBean bean = (MyOtherBean) context.getBean("myBean");

System.out.println("bean.getRandomNumber() = " + bean.getRandomNumber());

System.out.println("bean.getPi()           = " + bean.getPi());

System.out.println("bean.getName()         = " + bean.getName());

}

}

执行程序时,您将得到以下结果作为输出:bean.getRandomNumber() = 0.7173165965231882

bean.getPi()           = 3.141592653589793

bean.getName()         = MyOtherBean

Java访问静态常量_Java如何在Spring EL中访问静态方法或常量?相关推荐

  1. java方法设置切点_java相关:Spring AOP中定义切点的实现方法示例

    java相关:Spring AOP中定义切点的实现方法示例 发布于 2020-6-6| 复制链接 摘记: 本文实例讲述了Spring AOP中定义切点的实现方法.分享给大家供大家参考,具体如下:一 配 ...

  2. java readline最后一行_java – 如何在reader.readLine()中检测第一行和最后一行?

    酷问题我打了一圈,这是一个 SSCCE,只是copy'n'paste'n'run它. package com.stackoverflow.q2292917; import java.io.Buffer ...

  3. java清除浏览器记录_java – 如何在Selenium测试中清除浏览器缓存

    我正在使用WebDriver运行我的Selenium测试.我正在用一些循环重复测试,所以现在我想在JAVA中开始新的测试之前清除缓存. @Test public void ffAndIe() thro ...

  4. 如何在 Spring 生态中玩转 RocketMQ?

    作者 | 通融.洛夜 来源 | 阿里巴巴云原生公众号 RocketMQ 作为业务消息的首选,在消息和流处理领域被广泛应用.而微服务生态 Spring 框架也是业务开发中最受欢迎的框架,两者的完美契合使 ...

  5. 如何在Spring boot中修改默认端口

    文章目录 介绍 使用Property文件 在程序中指定 使用命令行参数 值生效的顺序 如何在Spring boot中修改默认端口 介绍 Spring boot为应用程序提供了很多属性的默认值.但是有时 ...

  6. 如何在Spring生态中玩转RocketMQ?

    简介: RocketMQ作为业务消息的首选,在消息和流处理领域被广泛应用.而微服务生态Spring框架也是业务开发中最受欢迎的框架,两者的完美契合使得RocketMQ成为Spring Messagin ...

  7. 如何在Spring Boot中使用TDD写出高质量的接口

    本文发布于专栏Effective Java,如果您觉得看完之后对你有所帮助,欢迎订阅本专栏,也欢迎您将本专栏分享给您身边的工程师同学. 之前在<如何说服你的同事使用TDD>中介绍了为什么要 ...

  8. 如何安装html启动器,如何在Spring Boot中创建自己的启动器?

    如何在Spring Boot中创建自己的启动器? 也许你有一个内部库包或一个在整个应用程序环境中常用的开源库,如果要在多个Spring Boot应用程序中使用它,为它创建一个Spring Boot启动 ...

  9. java 如何级联删除_Java学习-040-级联删除目录中的文件、目录

    之前在写应用模块,进行单元测试编码的时候,居然脑洞大开居然创建了一个 N 层的目录,到后来删除测试结果目录的时候,才发现删除不了了,提示目录过长无法删除.网上找了一些方法,也找了一些粉碎机,都没能达到 ...

最新文章

  1. php redis安装使用
  2. PHP内核探索之变量(2)-理解引用
  3. python多进程通信manager_python中进程间数据通讯模块multiprocessing.Manager的介绍
  4. Android 功耗(8)---如何找到阻止进入deep idle / SODI的元凶
  5. Nginx防止恶意解析-禁止通过IP访问网站
  6. 微信小程序wx.request请求用POST后台得不到传递数据
  7. 应用安全-安全设备-Waf系列-软Waf-安全狗(Safedog)
  8. 循环buffer的实现_Go并发编程-Channel的设计实现
  9. 微信服务号/企业号防止AccessToken过期的操作指南深入浅出
  10. stringbuffer用法 java_StringBuffer的用法
  11. 统计年鉴29份3种格式混合
  12. vue中局部过滤器和全局过滤器的使用
  13. ajax提交验证非空,5.验证用户名是否已经被注册:AJAXC请求
  14. pl0运行栈中间代码类P-code解析
  15. 小米一体化微水滴形态转轴,揭露小米MIX Fold 2的轻薄秘密
  16. sublime Text3去除文本重复行
  17. [C++程序设计](入门级题解)小鱼的航程
  18. 摄像头poe供电原理_poe供电是什么_poe供电工作原理介绍 - 全文
  19. Qt网络资源汇总(官网、源码、社区、博客)
  20. 发论文时遇到的问题汇总

热门文章

  1. Mybatis介绍、jdbc操作数据库原始写法以及Mybatis架构
  2. 阿里云日志服务SLS,打造云原生时代智能运维
  3. 【产品动态】一文详细解读智能数据构建产品Dataphin的“规划”功能
  4. 技术干货 | 源码解析 Github 上 14.1k Star 的 RocketMQ
  5. 基于深度学习的图像分割在高德的实践
  6. 性能诊断利器 JProfiler 快速入门和最佳实践
  7. 数据结构与算法、讲解、动态规划一脸懵?看完之后轻松掌握!
  8. 酸了!华为补贴湖北员工每天最高 2000 元
  9. 刚刚,阿里云上线六大“战疫情”项目
  10. 行!人工智能玩大了!程序员:太扯,阴谋!你怎么看?