แท็ก <fmt:setBundle> ใช้โหลด Resource Bundle และเก็บไว้ใน scoped variable เพื่อให้สามารถใช้หลาย Bundle พร้อมกันใน JSP เดียวได้
แอตทริบิวต์ของ <fmt:setBundle>
| แอตทริบิวต์ | คำอธิบาย | จำเป็น | ค่าเริ่มต้น |
|---|---|---|---|
| basename | Base name ของ Resource Bundle family (fully qualified class name) | ใช่ | None |
| var | ชื่อตัวแปรเก็บ Bundle object | ไม่ | Replace default |
| scope | ขอบเขตของตัวแปร | ไม่ | Page |
ตัวอย่าง: ใช้สอง Bundle พร้อมกัน
<%@ taglib uri="https://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="https://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<html>
<head>
<title>JSTL fmt:setBundle Tag</title>
</head>
<body>
<fmt:setLocale value="en"/>
<fmt:setBundle basename="com.tutorialspoint.Example" var="lang"/>
<fmt:message key="count.one" bundle="${lang}"/><br/>
<fmt:message key="count.two" bundle="${lang}"/><br/>
<fmt:message key="count.three" bundle="${lang}"/><br/>
</body>
</html>
ผลลัพธ์
One Two Three
การใช้หลาย Bundle: เรียก <fmt:setBundle> หลายครั้งด้วย var ต่างกัน แล้วระบุ bundle ใน <fmt:message> ตามต้องการ