Tải bản đầy đủ (.ppt) (49 trang)

JavaServer Pages Standard Tag Library

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (184.45 KB, 49 trang )

JSTL
JSTL


Khoa Mạng máy tính và Truyền thông
Khoa Mạng máy tính và Truyền thông
Đại học Công nghệ Thông tin
Đại học Công nghệ Thông tin
JavaServer Pages Standard Tag Library
JavaServer Pages Standard Tag Library
JavaServer Pages Standard Tag Library
2
Nội dung
Nội dung

Giới thiệu tổng quan

Các thành phần chức năng của JSTL

Core tags

Database Access tags

XML tags

Internationalization and Text Formatting tags

EL (Expression Language) function tags
Giới thiệu tổng quan
Giới thiệu tổng quan
JavaServer Pages Standard Tag Library


4
JSTL?
JSTL?

Tập các thư viện thẻ chuẩn

Hỗ trợ sử dụng thẻ trong JSP thay cho code
Java

Cài đặt các tính năng cơ bản thông dụng cho
các ứng dụng JSP

Cấu trúc điều khiển (lặp và điều kiện)

Truy cập CSDL

XML

Hỗ trợ internationalization

Portable
JavaServer Pages Standard Tag Library
5
Download và cài đặt
Download và cài đặt

Download

URL:
/>glibs-standard.cgi


Cài đặt

{taglib}/tld: copy vào thư mục /WEB-INF của ứng dụng
và khai báo trong tập tin web.xml

{taglib}/lib: copy các tập tin .jar vào thư mục /WEB-
INF/lib của ứng dụng
JavaServer Pages Standard Tag Library
6
Khai báo taglib trong web.xml
Khai báo taglib trong web.xml

<taglib>
<taglib-uri> /> <taglib-location>/WEB-INF/fmt.tld</taglib-location>
</taglib>

<taglib>
<taglib-uri> /> <taglib-location>/WEB-INF/c.tld</taglib location>
</taglib>

<taglib>
<taglib-uri> /> <taglib-location>/WEB-INF/sql.tld</taglib location>
</taglib>

<taglib>
<taglib-uri> /> <taglib-location>/WEB-INF/x.tld</taglib location>
</taglib>
JavaServer Pages Standard Tag Library
7

JSTL Tag Libraries
JSTL Tag Libraries

Core (prefix: c): tính năng cơ bản

Khai báo biến, cấu trúc điều khiển, thao tác với URL

Database (prefix: sql)

SQL: truy vấn và cập nhật

XML (prefix: x): xử lý XML

Tính năng cở bản, thao tác xử lý, hoán chuyển định dạng

Internationalization (i18n) (prefix: fmt)

Locale, định dạng message, định dạng số và ngày giờ

Functions (prefix: fn)

Collection length, thao tác trên String
JavaServer Pages Standard Tag Library
8
Khai báo sử dụng JSTL
Khai báo sử dụng JSTL

Core

<%@ taglib prefix=“c” uri=“ %>


XML

<%@ taglib prefix=“x” uri=“ %>

Internationalization (i18n)

<%@ taglib prefix=“fmt” uri=“ %>

Functions

<%@ taglib prefix=“fn” uri=“ %>

Database (SQL)

<%@ taglib prefix=“sql” uri=“ %>
Core Tags
Core Tags
JavaServer Pages Standard Tag Library
10
Core Tags Types
Core Tags Types

Khai báo và sử dụng biến

<c:set>

<c:remove>

Cấu trúc điều kiện


<c:if>

<c:choose>

<c:when>

<c:otherwise>

Iteration

<c:forEach>

<c:forTokens>
JavaServer Pages Standard Tag Library
11
Core Tags Types
Core Tags Types

Thao tác với URL

<c:import>

<c:param>

<c:redirect>

<c:param>

<c:url>


<c:param>

Các mục đích khác

<c:out>

<c:catch>
JavaServer Pages Standard Tag Library
12
Khai báo và sử dụng biến: <c:set>
Khai báo và sử dụng biến: <c:set>

Thiết lập giá trị của một biến thông qua thuộc tính
“var” trong một phạm vi “scope” cụ thể: page,
request, session, application

Nếu chưa tồn tại, biến sẽ được tạo ra

Có hai cách để sử dụng <c:set>

<c:set var=“…” scope=“…” value=“…” />

<c:set var=“userId” scope=“request” value=“${param.userID}” />

<c:set var=“…”>value</c:set>
JavaServer Pages Standard Tag Library
13
Ví dụ
Ví dụ


Khai báo và định nghĩa biến
<c:set var="customerTable" scope="application">
<table border="1">
<c:forEach var="customer" items="${customers}">
<tr>
<td>${customer.lastName}</td>
<td><c:out value="${customer.firstName}
default="..."/></td>
<td>
<c:out value="${customer.address}">
<font color="red">no address specified</font>
</c:out>
</td>
</tr>
</c:forEach>
</table>
</c:set>
JavaServer Pages Standard Tag Library
14
Ví dụ
Ví dụ

Sử dụng biến đã định nghĩa
<c:out value="${customerTable}" escapeXml="false"/>
JavaServer Pages Standard Tag Library
15
Hủy biến nhớ
Hủy biến nhớ


Hủy một biến đã được khai báo và định nghĩa

<c:remove var="cart" scope="session“ />
JavaServer Pages Standard Tag Library
16
Sử dụng: <c:catch>
Sử dụng: <c:catch>
<c:catch var ="catchException">
command-block
</c:catch>
JavaServer Pages Standard Tag Library
17
Conditional Tags
Conditional Tags

Sử dụng thay cho lệnh Java

<c:if test=“…” >

Khối lệnh trong <c:if>được thực thi tùy thuộc và giá trị
của biểu thức test

<c:choose>

Khối lệnh trong các thẻ con <c:when> và
<c:otherwise> sẽ được thực thi tùy thuộc vào điều kiện

Nguyên tắc hoạt động giống if-then-else
JavaServer Pages Standard Tag Library
18

Ví dụ
Ví dụ

<c:if>
<c:if test="${customer.lastName == ‘Le’}">
${customer}<br>
</c:if>

<c:choose>
<c:choose>
<c:when test="${customer.lastName == ‘Le’}">
<font color="blue">
</c:when>
<c:when test="${customer.lastName == ‘Nguyen'}">
<font color="red">
</c:when>
<c:otherwise>
<font color="green">
</c:otherwise>
</c:choose>
${customer}</font><br>
JavaServer Pages Standard Tag Library
19
Iterator Tags
Iterator Tags

Được sử dụng để duyệt kiểu dữ liệu tập hợp.
Thẻ <c:forEach> với các thuộc tính sau:

items: tập hợp các đối tượng


var: item hiện tại đang được duyệt

varStatus: trạng thái duyệt

begin, end, step: phạm vi duyệt và bước nhảy

Các kiểu dữ liệu tập hợp

java.util.Collection

java.util.Map

Kiểu dữ liệu của thuộc tính var là java.util.Map.Entry với hai
thành phần:

key

value

×