1. 監聽器
1.1監聽對象:
自己創建自己用 (不用監聽)
別人創建自己用(需要監聽)
Servlet中哪些對象需要監聽?
request / session / servletContext
分別對應的是request監聽器、session相關監聽器、servletContext監聽器
1.2監聽器接口:
一、監聽對象創建/銷燬的監聽器接口
Interface ServletRequestListener 監聽request對象的創建或銷燬
Interface HttpSessionListener 監聽session對象的創建或銷燬
Interface ServletContextListener 監聽servletContext對象的創建或銷燬
二、監聽對象屬性的變化
Interface ServletRequestAttributeListener 監聽request對象屬性變化: 添加、移除、修改
Interface HttpSessionAttributeListener 監聽session對象屬性變化: 添加、移除、修改
Interface ServletContextAttributeListener 監聽servletContext對象屬性變化
三、session相關監聽器
InterfaceHttpSessionBindingListener 監聽對象綁定到session上的事件 ,不用再web.xml配置
InterfaceHttpSessionActivationListener(瞭解) 監聽session序列化及反序列化的事件
2. 國際化
2.1.Locale 本地化
Java提供了一個本地化的對象!封裝當前語言、國家、環境等特徵!
2.2靜態數據國際化
網站中顯示的固定文本的國際化:“用戶名”“密碼“
國際化的軟件:
1. 存儲所有國家顯示的文本的字符串
a) 文件: properties
b) 命名: 基礎名_語言簡稱_國家簡稱.properties
例如:msg_zh_CN.properties 存儲所有中文
Msg_en_US.properties 存儲所有英文
2. 程序中獲取
ResourceBundle類,可以讀取國際化的資源文件!
2.3動態文本國際化
中文:1987-09-19 ¥1000
英文: Sep/09 1987 $100
l 數值,貨幣,時間,日期等數據由於可能在程序運行時動態產生,所以無法像文字一樣簡單地將它們從應用程序中分離出來,而是需要特殊處理。Java 中提供瞭解決這些問題的API 類(位於java.util 包和java.text 包中)
2.4 Jsp頁面國際化-使用jstl標籤
JSTL標籤:
核心標籤庫
國際化與格式化標籤庫的引入
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt"prefix="fmt"%>
數據庫標籤庫(沒用)
函數庫
<fmt:setLocale value=""/> 設置本地化對象
<fmt:setBundlebasename=""/> 設置工具類
<fmt:message></fmt:message> 顯示國際化文本
格式化數值
<fmt:formatNumberpattern="#.##" value="100.99"></fmt:formatNumber>
格式化日期:
<fmt:formatDatepattern="yyyy-MM-dd" value="${date}"/>