java - 将属性文件中的值加载到 jsp 中,而不在 JSP 页面内使用 scriplet

标签 java spring jsp servlets web

我需要从属性中读取值,并且该值将显示在我的 JSP 页面上。 我通过在 JSP 页面中添加 java 代码来执行此操作,如下所示:

<%@page import="java.io.InputStream" %>
<%@page import="java.util.Properties" %>

<%
    InputStream stream = application.getResourceAsStream("etc/appconfigweb.properties");
    Properties props = new Properties();
    props.load(stream);
    String env = props.getString("environment");
%>
    <% env %>

现在我想将属性文件值加载到 JSP 页面中,而不将 java 代码放入 JSP 中。有没有一种方法可以将值加载到JSP中。

最佳答案

您可以使用jSTL标签库在您的jsp页面上加载属性,请确保您的属性文件位置应为WEB-INF\classes\etc\

<%@ taglib uri = "http://java.sun.com/jsp/jstl/core" prefix = "c" %>
<%@ taglib uri = "http://java.sun.com/jsp/jstl/fmt" prefix = "fmt" %>
....
....
  <fmt:setLocale value = "en"/>
  <fmt:setBundle basename = "etc.appconfigweb" var = "lang"/>
  <fmt:message key = "environment" bundle = "${lang}"/>

Example of jstl for reading Property file

关于java - 将属性文件中的值加载到 jsp 中,而不在 JSP 页面内使用 scriplet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46946241/

相关文章:

java - 无法将文件上传到启用 https 的 servlet

jsp - 是否可以为 <host :port> 使用 CNAME(别名)

css - 无法加载资源 : the server responded with a status of 500 () Spring mvc

java.io.IOException : Cannot run program "dir": CreateProcess error=2, Das系统

java - Spring/Grails - 使用新属性重新加载 bean

java - Java中逻辑复杂的EnumSet

java - Spring MVC 中服务器向客户端发送消息

jquery - Mysql 查询与 JSP 和 JQuery 无需刷新

java - 使用数组旋转位图

java - 根据Java中的天数获取日期