亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

JSP中日期的用法

2024-09-05 00:20:26
字體:
來源:轉載
供稿:網友
菜鳥學堂:
作者: builder.com

在開發有關日歷的應用程序時,不規則的每月日期數、每周天數和周末的計算一直是個很費腦筋的問題。結果,日期和時間的編程經常令程序員新手畏縮不前。本文將演示在jsp應用程序中日期的用法,為讀者完成某些常見任務提供方便的參考。


目的



示例應用程序的目的是:

通過html表單把日期參數提交某個jsp頁來處理。
接收日期參數并創建calendar對象。
采用calendar對象找出提交的日期是一周的第幾天以及選中月份里有多少工作日。
用用戶易于閱讀的顯示格式對日期格式化。

環境

示例程序代碼在java web服務器上接受測試,該服務器配置了jdk 1.31。示例寫得很標準,在tomcat或者其他jsp web服務器(jdk 1.2或者以后版本)上運行的效果幾乎完全一樣。

通過表單把日期傳遞給jsp頁

date(日期)參數是用戶從3欄下拉列表中選出來的。用戶提交表單之后,這些參數即被傳送給處理頁面。

在進行日歷編程時不要忘了導入java.util.calendar:
〈%@ page import="java.util.calendar" %〉

處理頁面的第1個任務是接收以下日期參數值:date、month和year。
int curdate = 1;
if(request.getparameter("curdate") != null)
{
curdate = integer.parseint(request.getparameter("curdate"));
}

注意頁面參數被轉換為int類型,馬上我們就知道為什么要這么做了。



calendar對象

我們的目標是創建和設置一個calendar對象,用它進行日期計算。為此,我們首先需要實例化一個calendar對象。
calendar cal = calendar.getinstance();

calendar.getinstance()返回一個代表當前日期和時間的calendar對象。
cal.clear();
cal.set(curyear, curmonth , curdate);

clear()方法清空calendar,這樣我們才可能給該對象分配我們自己的日期值并為將來的計算做好準備。注意這些參數的順序:首先是年,最后是日期。



從calendar獲取信息

以下是一組calendar字段:

日期
date, day_of_month, day_of_week, day_of_year

時間
hour_of_day, minute, millisecond, second


week_of_month, week_of_year


year

以上這些字段都可以通過calendar的get()方法進行訪問,結果返回一個整數。以下代碼示例顯示了以上過程。

一周內的日期
int dayofweek = cal.get(cal.day_of_week);
out.print("〈br〉day of week: " + dayofweek + " 〈br〉");

一月內的日期
int dayofmonth = cal.get(cal.day_of_month);
out.print("〈br〉day of month: " + dayofmonth + " 〈br〉");

定位特定的日期



為了找出一周內特定的某一天就必須訪問day_of_week字段。該字段包含了范圍從1到7的整數值,1代表星期一,2代表星期二,其余以次類推。
int dayofweek = cal.get(cal.day_of_week);

這里有個向用戶顯示日期的好方法,那就是聲明一個包含一周內天數的數組。然后就可以很方便地顯示各個日期了。只要采用day_of_week整數訪問數組內的當前日期即可。
string[] weekdays = new string[]
{“”, "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday"};
〈%=weekdays[cal.get(cal.day_of_week)]%〉

注意該數組的第1個元素為空。這是因為day_of_week字段值的范圍是從1到7,而數組元素的引用范圍則是從0到6。在數組開頭加一個空元素就可以保證day_of_week字段的值和數組引用相匹配了。



找出周末
為了找出某天是否正好是星期天或者星期六可以編寫以下代碼:
int day = cal.get(cal.day_of_week);
if(day == 6 || day == 7)
{
//執行與周末有關的操作
}



工作日

現在我們需要計算出某個月內的工作日天數。用戶輸入日期(參看index.jsp)之后把參數發送給處理頁面(參看display.jsp)。在處理頁面上,我們把calendar對象設置為該月的第1天。
cal.clear();
cal.set(curyear, curmonth , 1);
int maxdays = cal.getactualmaximum(cal.date);
out.print("〈br〉number of days in month: " + maxdays + "〈br〉");

我們還需要知道某個月內到底有多少天。getactualmaximum()方法返回一個整數值,該值就包含了每個月內的最多天數:2月是28天,3月是31天等等。在閏年的話2月的天數返回 29天。

一旦我們得到了每個月內的最多天數,我們就可以很方便地循環每月天數判斷是否是周末或者工作一日。我們用add()方法給calendar遞增1,如程序清單a所示。



用simpledateformat向用戶顯示日期

simpledateformat處理顯示日期的最常用需求,它可以用來把日期轉換為特定的保存格式。你可以采用以下的導入指示符:
〈%@ page import="java.text.simpledateformat" %〉

以下的代碼給用戶顯示日期:
simpledateformat formatter = new simpledateformat("dd/mmm/yyyy");
out.print("〈br〉" + formatter.format(cal.gettime()) );

simpledateformat對象接受一個字符串作為其對象構造器,該字符串參數包含了用戶希望采用的顯示格式。這個格式字符串可以包含額外的格式字符串,比如空格(“ ”)、反斜線( “/”)和破折號(“-”)。

表a列出了所有有效的(常用的)顯示格式。

表a

格式
示例

“dd/mmm/yyyy”
06/mar/1974

"dd-mm-yyyy"
06-03-1974

"dd mmmmmmmmm yyyy"
06 march 1974

"eeeeeeeee, mmmmmmmmm dd, yyyy"
wednesday, march 06, 1974


有效的simpledateformat顯示格式



表b是simpledateformat參數的縮略語表。

表b

y
year

m
month in year

d
day in month

d
day in year

w
week in year

w
week in month

e
day in week


simpledateformat參數


重用代碼--formattitle

在同一頁面上實施多種格式轉換有個簡單方法:在declaration元素中是聲明formattitle方法,它接受兩個參數,一個引用calendar對象,另一個返回格式。
〈%!
public string formattitle(calendar fcal, string format)
{
simpledateformat formatter = new simpledateformat(format);
return (formatter.format(fcal.gettime() ));
}
%〉

為了顯示日期,我們調用formattitle()并為其傳遞calendar和格式字符串參數。
〈%=formattitle(cal, “dd-mmm-yyyy”)%〉


小結

學完以上的簡單教程,相信你現在應該能用calendar和simpledateformat對象操作和顯示日期了。

add()和set()方法可以輕松配置calendar,促使你可以為商業應用程序遍歷月份和年數。formattitle方法可以大大簡化給用戶顯示日期的任務,同樣的,它還簡化了把日期轉換為字符串的操作,而這一操作主要應用在數據庫和xml文檔的數據保存方面。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产成人avxxxxx在线看| 国产精品pans私拍| 另类图片亚洲另类| 亚洲xxxxx电影| 国内精品久久久久影院 日本资源| 97香蕉超级碰碰久久免费软件| 57pao精品| 国产成人免费av| 亚州国产精品久久久| 亚洲丁香婷深爱综合| 亚洲成人1234| 精品亚洲一区二区三区四区五区| 日韩一区二区福利| 国产午夜精品全部视频在线播放| 欧美日韩亚洲精品内裤| 在线激情影院一区| 国产脚交av在线一区二区| 久久视频在线播放| 国产精品一区二区三区免费视频| 日韩欧亚中文在线| 97高清免费视频| 中文字幕少妇一区二区三区| 最好看的2019的中文字幕视频| 欧美日韩国产综合视频在线观看中文| 国产精品99久久99久久久二8| 国产精品成人免费电影| 国产日本欧美视频| 亚洲丁香婷深爱综合| 午夜精品一区二区三区视频免费看| 欧美又大又硬又粗bbbbb| 国产亚洲精品美女久久久久| 欧美性一区二区三区| 国产精品小说在线| 国产精品麻豆va在线播放| 国内精品视频久久| 欧美成人在线网站| 精品国产一区av| 欧美色欧美亚洲高清在线视频| 亚洲欧洲成视频免费观看| 97在线视频免费看| 亚洲天天在线日亚洲洲精| 成人综合网网址| 日本亚洲欧洲色| 91av在线免费观看| 精品久久久久久亚洲精品| 国产精品久久久精品| 日韩视频永久免费观看| 亚洲区免费影片| 亚洲免费伊人电影在线观看av| 久久久噜噜噜久久| 日韩高清电影免费观看完整| 国产亚洲欧美另类中文| 亚洲男人的天堂网站| 富二代精品短视频| 亚洲国产精品推荐| 久久久久久97| 欧美国产日韩免费| 在线成人一区二区| 九九视频直播综合网| 韩日精品中文字幕| 亚洲午夜精品久久久久久久久久久久| 国产精品成人一区二区| 欧美一级视频一区二区| 亚洲日韩欧美视频一区| 亚洲电影中文字幕| 一本色道久久88精品综合| 久久久噜噜噜久久中文字免| 九九热精品视频国产| 亚洲男人天堂2019| 国产一区二区三区在线看| 91精品综合久久久久久五月天| 91精品国产亚洲| 国产精品久久综合av爱欲tv| 久久视频精品在线| 日韩精品在线免费观看| 亚洲日本成人女熟在线观看| 欧美孕妇性xx| 亚洲精品一区二区三区婷婷月| 久久香蕉国产线看观看网| 亚洲免费精彩视频| 欧美国产精品人人做人人爱| 91超碰中文字幕久久精品| 欧美一级淫片videoshd| 九九精品视频在线| 欧美大片欧美激情性色a∨久久| 国产一区二区黑人欧美xxxx| 欧美精品激情在线| 日韩福利伦理影院免费| 人人澡人人澡人人看欧美| 欧美午夜电影在线| 国产一区二区三区在线看| 国产日本欧美一区二区三区| 欧美一级免费看| 这里只有精品视频| 亚洲一区二区免费在线| 亚洲精品美女在线观看播放| 日本一区二区在线播放| 国产精品激情av在线播放| 国内精品小视频在线观看| 久久国产天堂福利天堂| 日韩av最新在线观看| 欧美激情一二三| 91国产精品电影| 国产在线播放不卡| 国产精品免费视频久久久| 日韩精品在线视频观看| 亚洲成人免费在线视频| 亚洲成人黄色网| 国产精品电影观看| 韩曰欧美视频免费观看| 亚洲欧美国产另类| 久久人人爽人人爽人人片av高清| 欧美精品videofree1080p| 国产欧美在线播放| 一区二区亚洲欧洲国产日韩| 国产精品高潮呻吟视频| 国产一区二区黑人欧美xxxx| 久久久久久成人| 亚洲精品成人久久电影| 亚洲字幕一区二区| 欧美日韩第一视频| 国产女人18毛片水18精品| 亚洲丁香婷深爱综合| 国产精品黄页免费高清在线观看| 欧美成人一区二区三区电影| 欧美日韩在线看| 国产69久久精品成人看| 国产在线精品自拍| 97色在线观看| 日韩精品免费看| 久久艳片www.17c.com| 国产噜噜噜噜久久久久久久久| 日韩免费观看网站| 日韩欧美中文字幕在线观看| 亚洲激情视频在线| 国产激情视频一区| 日韩三级影视基地| 国产成人精品优优av| 久久综合久中文字幕青草| 久久精品国产96久久久香蕉| 亚洲男人的天堂网站| 欧美激情按摩在线| 91中文字幕在线| 欧美国产在线视频| 国产欧美va欧美va香蕉在| 欧美日韩激情美女| 欧美专区在线播放| 国产精品私拍pans大尺度在线| 色偷偷888欧美精品久久久| 久久亚洲精品网站| yellow中文字幕久久| 亚洲综合自拍一区| 成人国产精品一区| 韩国欧美亚洲国产| 97人人做人人爱| 理论片在线不卡免费观看| 色哟哟亚洲精品一区二区| 日韩欧美极品在线观看| 久久精品国产亚洲7777| 亚洲精品电影网| 北条麻妃在线一区二区| 日韩欧美精品在线观看| 中文字幕日韩av综合精品| 一区二区在线免费视频|