JSTL <fmt:bundle> 标签用来绑定数据源(.properties)文件,JSTL <fmt:message> 标签用来从指定的资源文件中调用信息。
语法
JSP <fmt:bundle> 标签的语法如下:
<fmt:bundle basename="resourceName" prefix="pre">
代码块
</fmt:bundle>
其中:
-
basename:指定要绑定的数据源
.properties
文件的名称; -
prefix:用来获取
.properties
文件的前缀。
JSP <fmt:message> 标签的语法如下:
<fmt:message key="messageName" [var="varname"] [bundle="resourceName"] [scope="page|request|session|application"] />
其中:
-
[ ]
:[ ]
中的内容为可选项; -
key:指定需要从
.properties
文件中取出的键名称; -
bundle:绑定的数据源
.properties
的文件名; - varname:用于保存取出的键值;
- scope:设置标签的有效范围。
示例
编写 myresource.properties 文件,内容如下:
my.name=runoops自学
my.url=www.runoops.com
.properties 文件中的中文默认以 Unicode 编码显示。
使用 <fmt:bundle> 标签绑定数据源中的 myresource.properties 文件,设定前缀为my.
,然后利用 <fmt:message> 标签取出值。index.jsp 代码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!DOCTYPE html>
<html>
<head>
<title>runoops自学(www.runoops.com)</title>
</head>
<body>
<fmt:bundle basename="myresource" prefix="my.">
<fmt:message key="name" var="name" />
<fmt:message key="url" var="url" />
</fmt:bundle>
网站名称:
<c:out value="${name }" />
<br />
网址:
<c:out value="${url }" />
</body>
</html>
页面输出内容如下:
网站名称: runoops自学
网址: www.runoops.com