java - JSTL 将字符串视为表达式语言

标签 java jsp jakarta-ee jstl el

我有一个教师 bean,其中包含他们希望如何查看学生姓名的姓名格式。我正在使用 EL 访问字符串,如下所示。老师已经在请求中设置了。

<c:out value="${requestScope.teacher.nameFormat}"/>

名称格式的值为表达式语言,如下所示。

1. ${student.lastName}, ${student.firstName}
2. ${student.lastName}, ${student.firstName.substring(0,1)}

我希望使用老师选择的姓名格式显示学生姓名。

1. Doe, John
2. Doe, J.

但我现在得到的结果是名称格式本身。

1. ${student.lastName}, ${student.firstName}
2. ${student.lastName}, ${student.firstName.substring(0,1)}

最佳答案

在您的域内创建一个方法

class Person{

  public String getPrettyName(){
    //operate and return
  }
}

以及 JSTL

<c:out value="${requestScope.teacher.prettyName}"/>

${requestScope.teacher.lastName}, ${fn:substring(requestScope.teacher.firstName, 0, 1)}

关于java - JSTL 将字符串视为表达式语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24922979/

相关文章:

java - 如何将 J2EE 插件安装到 Eclipse Luna SE 中

jakarta-ee - 根上下文/应用程序上下文和 Servlet 上下文

java - "throw new Exception"和 "new Exception"之间的区别?

java - 货币转换器无法正确转换

java - struts中无权访问页面时如何重定向到homepage.do?

java - 我在哪里可以下载 JSTL jar

java - 函数不会改变java中变量的值?

java - 浏览器显示陈旧的 JSP 页面,用户必须手动刷新

java - JSP 中每个标记的逗号分隔值

Google-app-engine 服务器 : Error 500 on working code - deployment problems. Java 代码