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

首頁 > 編程 > JSP > 正文

動態網頁:在JSP應用程序中日期的用法

2024-09-05 00:19:46
字體:
來源:轉載
供稿:網友

在開發有關日歷的應用程序時,不規則的每月日期數、每周天數和周末的計算一直是個很費腦筋的問題。結果,日期和時間的編程經常令程序員新手畏縮不前。本文將演示在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文檔的數據保存方面。

  • 本文來源于網頁設計愛好者web開發社區http://www.html.org.cn收集整理,歡迎訪問。
  • 發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
    色99之美女主播在线视频| 国产在线日韩在线| 国产suv精品一区二区| 久久精品国亚洲| 亚洲区中文字幕| 精品亚洲国产成av人片传媒| 亚洲欧洲xxxx| 欧美风情在线观看| 色爱精品视频一区| 亚洲电影av在线| 欧美久久精品午夜青青大伊人| 欧美孕妇孕交黑巨大网站| 福利精品视频在线| 成人春色激情网| 久久免费少妇高潮久久精品99| 国产亚洲精品久久久久动| 成人日韩av在线| 欧美极品美女视频网站在线观看免费| 成人黄色av播放免费| 欧美日韩福利视频| 国产91精品久久久久久| 91丨九色丨国产在线| 奇米四色中文综合久久| 91精品在线影院| 精品成人乱色一区二区| 欧美老女人性视频| 欧美肥臀大乳一区二区免费视频| 免费97视频在线精品国自产拍| 最近中文字幕mv在线一区二区三区四区| 久久久电影免费观看完整版| 久久久久久高潮国产精品视| 91国内在线视频| 亚洲欧美中文日韩在线v日本| 久久久久久久久久久av| 国产精品极品美女粉嫩高清在线| 国产精品视频免费观看www| 欧美黄色片在线观看| 欧美国产亚洲精品久久久8v| 91免费视频网站| 亚洲成人久久一区| 成人欧美一区二区三区在线| 日韩大胆人体377p| 国产精品电影久久久久电影网| 4k岛国日韩精品**专区| 91精品一区二区| 久久99久久99精品免观看粉嫩| 欧美理论片在线观看| 欧美性猛交xxxx久久久| 国产人妖伪娘一区91| 亚洲国产精品99久久| 国产精品久久久久久搜索| 亚洲欧美成人网| 欧美日韩国产区| 久久99久久亚洲国产| 精品国产福利在线| 亚洲精品女av网站| 2024亚洲男人天堂| 久久av红桃一区二区小说| 91久久精品久久国产性色也91| 国产va免费精品高清在线观看| 欧美激情视频一区| 欧美日韩国产激情| 久久精品成人动漫| 亚洲成人网久久久| 国产精品综合不卡av| 亚洲午夜小视频| 日韩中文在线中文网在线观看| 欧美日韩激情网| 亚洲国产精品女人久久久| 精品无人区太爽高潮在线播放| 亚洲男女自偷自拍图片另类| 97国产在线视频| 国产精品啪视频| 97欧美精品一区二区三区| 欧美大奶子在线| 国产91免费看片| 色悠久久久久综合先锋影音下载| 欧美最猛性xxxx| 国产日韩精品在线观看| 成人激情电影一区二区| 国模叶桐国产精品一区| 国产精品久久久999| 亚洲国产美女精品久久久久∴| 日韩在线观看视频免费| 色悠悠国产精品| 国产精品青青在线观看爽香蕉| 国产香蕉一区二区三区在线视频| 中文字幕日韩免费视频| 国产日韩欧美91| 国产欧美一区二区三区视频| 久久免费在线观看| 久久视频在线播放| 亚洲精品一区久久久久久| 亚洲欧美日韩精品久久| 亚洲欧洲中文天堂| 国产精品成人一区二区三区吃奶| 国产综合色香蕉精品| 久久久久久久久久久亚洲| 国产亚洲精品久久久优势| 中文字幕亚洲一区在线观看| 欧美国产日产韩国视频| 欧美成人黑人xx视频免费观看| 亚洲色图13p| 91九色视频导航| 一区二区三区www| 欧美成人h版在线观看| 亚洲欧美中文在线视频| 欧美日韩国产限制| 一区二区av在线| 91亚洲一区精品| 欧洲中文字幕国产精品| 91精品国产高清久久久久久| 久久免费在线观看| 亚洲精品资源美女情侣酒店| 日韩欧美视频一区二区三区| 欧美二区在线播放| 精品国产一区二区三区久久狼黑人| 久久色免费在线视频| 国产欧美日韩免费| 国内精品久久久久影院 日本资源| 91精品国产综合久久香蕉| 国产999在线观看| 亚洲aaa激情| 成人综合国产精品| 欧美性猛交xxxxx免费看| 日韩中文字幕欧美| 欧美日韩人人澡狠狠躁视频| 精品动漫一区二区三区| 欧美日韩中文在线| 深夜成人在线观看| 亚洲国产日韩精品在线| 日韩电影在线观看永久视频免费网站| 在线观看日韩专区| 欧美成人精品不卡视频在线观看| 91免费人成网站在线观看18| 精品一区二区三区电影| 韩国一区二区电影| 久久精品99久久久香蕉| 国产精品亚洲第一区| 久久综合色88| 精品久久香蕉国产线看观看亚洲| 国产成人精品综合久久久| 美日韩精品免费观看视频| 久久久精品日本| 欧美国产第二页| 欧美日韩一二三四五区| 国产精品免费视频xxxx| 成人中文字幕+乱码+中文字幕| 在线视频欧美日韩精品| 国产剧情久久久久久| 色综合久久精品亚洲国产| 亚洲一区二区黄| 久久久久日韩精品久久久男男| 久久久国产一区二区| 在线观看日韩欧美| 中文字幕在线亚洲| 久久99精品国产99久久6尤物| 亚洲国产成人在线视频| 欧美日韩国产一中文字不卡| 欧美成人午夜激情在线| 亚洲白拍色综合图区| 中文字幕亚洲无线码在线一区| 日韩欧美精品网址| 成人国产精品免费视频|