Prämisse
- Die .properties-Konfigurationsdatei wird im Ordner web-inf/classes, also zusammen mit der Klassendatei, abgelegt.
- Angenommen, es gibt eine systemInfo.properties-Datei.
AppName=这是可自定义的产品名称
1. Verwenden Sie ResourceBundle
Wie wir alle wissen, kann Java-Code in JSP-Seiten geschrieben werden. Verwenden Sie daher das ResourceBundle unter dem Paket java.util, um die Eigenschaften in der Eigenschaftendatei zu lesen.
Verwendung
- Führen Sie das Paket java.util oben auf der JSP-Seite ein
<%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
- Verwenden Sie ResourceBundle, um Eigenschaftendateien zu laden
ResourceBundle resource = ResourceBundle.getBundle("systemInfo"); // 不带properties扩展名的文件名
- Konfigurationswerte lesen
resource.getString("AppName"); // 属性名
Vollständiges Beispiel
<%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
<%
ResourceBundle resource = ResourceBundle.getBundle("systemInfo");
%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- 直接输出配置值 -->
<title><%=resource.getString("AppName") %></title>
</head>
<body>
<script type="text/javascript">
// 赋值给js变量
var appName = 'resource.getString("AppName")';
</script>
</body>
</html>
2. Verwenden Sie das JSTL-Tag fmt:message
- Einführung des fmt-Tags in jstl
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
- Verwenden Sie fmt:setBundle, um die Eigenschaftendatei zu laden
<!-- basename为不带properties扩展名的文件名;var为存储该配置文件的变量名 -->
<fmt:setBundle basename="systemInfo" var="sysInfo" /> //
- Verwenden Sie fmt:message, um Konfigurationswerte zu lesen
<!-- key为配置文件中的属性名;var为存储该配置值的变量名;bundle为上一步中存储配置文件的变量名 --> <fmt:message key="AppName" var="appName" bundle="${sysInfo}" />
- Lesen Sie Konfigurationswerte mithilfe von EL-Ausdrücken
<!-- 上一步中存储配置值的变量名 -->
${appName}
Vollständiges Beispiel
<%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<!-- 加载systemInfo配置文件 -->
<fmt:setBundle basename="systemInfo" var="sysInfo" />
<!-- 读取配置值AppName,并赋值给变量appName -->
<fmt:message key="AppName" var="appName" bundle="${sysInfo}" />
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- 直接输出配置值 -->
<title>${appName}</title>
</head>
<body>
<script type="text/javascript">
// 赋值给js变量
var appName= '${appName}';
</script>
</body>
</html>