老夫個人雜記, 基於創用CC(Creative Commons)精神歡迎分享資料
Taiwan / Repulic of CHINA / ROC ( Traditional Chinese ).
2009-12-16
html/Javascript/servlet(JSP) include
js/javascript
<SCRIPT src="include.js">< /SCRIPT>
iframe
<iframe src="xxx.html" id="iframe1" onload="this.height=iframe1.document.body.scrollHeight+20;this.width=iframe1.document.body.scrollWidth+20">< /iframe>
<iframe src="被嵌入的 HTML 檔案路徑" height="xxx" width="xxx" scrolling="yes"></iframe>
<IFRAME NAME="content_frame" width=100% height=30 marginwidth=0 marginheight=0 SRC="import.htm" ></IFRAME>
你会看到外部引入的文件,但会发现有一个类似外框的东西将其包围,可使用
<iframe name="content_frame" marginwidth=0 marginheight=0 width=100% height=30 src="import.htm" frameborder=0></iframe>
<XML SRC="">< /XML>
<LINK rel="text/stylesheet" src="">
JSP
include in HEAD or BODY
<%@ include file="inc1.jsp" %> -- if file is jsp code , remember < % %>
include in BODY
< jsp:include page="hello.htm" />
ASP
<!--#include file=abc.asp-->
2009-08-17
JSP/Java timestamp math & comparison
Java 搞個 datetime 計算真是很囉嗦, Oracle 簡潔多了. 更奇怪的是Java書都很少有詳盡的說明 Date/Calendar/Timestamp .
Date - java.util.Date
date001.getTime() - 取得 Date 毫秒數值 mSec since 1970/01/01
Calendar
cal001.getTime() - 取得 Calendar datetime 資料 since 1970/01/01
cal001.getTime().getTime() - 取得 Calendar 毫秒數值 mSec since 1970/01/01
Timestamp
java.sql.Timestamp dd001 = null;
Math:
Calendar cal01 = Calendar.getInstance(); // Declare Calendar object
cal01.setTime(someDate); // set Calendar object from date
cal01.add(Calendar.MINUTE, -90); // mathmatic add -90 minutes
cal01.add(Calendar.DATE, 1); // mathmatic add 1 day
java.util.Date d01 = cal01.getTime(); // Assign Calendar to Date object
java.util.Date date1 = new java.util.Date("12/15/2001");
java.util.Date date2 = new java.util.Date("10/30/2004");
long dayDiff = ((date2.getTime() - date1.getTime()) /86400000); //計算差異天數
Comparison (適用 Date & Calendar):
* if(cal01.after(cal02)) {} else {}
* if (dd001!=null) { } else { }
----- Use Groovy test -----
import java.text.*
import java.sql.*
println "Hello"
SimpleDateFormat fmt = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
java.util.Date dt = (java.util.Date) fmt.parse("2004/12/30 12:00:00");
Timestamp ts = new Timestamp(dt.getTime());
//println "dt= " "-"+fmt.format(dt)
//println "ts=" ts
//System.out.println(fmt.format(dt.getTime())); //java syntax
println fmt.format(dt.getTime())
----- Groovy Test 2 -----
import java.text.*;
import java.sql.Timestamp;
String str_date="2009-07-11"
DateFormat formatter = new SimpleDateFormat("yyyy-mm-dd");
java.util.Date date = (java.util.Date)formatter.parse(str_date);
java.sql.Timestamp timeStampDate = new Timestamp(date.getTime());
System.out.println("Today is " +timeStampDate);
----- Groovy Test final -----
import java.util.* ; // ArrayList
import java.text.* ; // SimpleDateFormat
import java.sql.* //Timestamp
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/MM/dd");
java.util.Date sysDate = new java.util.Date();
java.sql.Timestamp fmdate ; //= new java.sql.Timestamp ;
java.sql.Timestamp todate ; //= new java.sql.Timestamp ;
java.util.Date dt1 = (java.util.Date) sdf1.parse('2009/08/01')
java.util.Date dt2 = (java.util.Date) sdf1.parse('2009/08/02')
fmdate = new java.sql.Timestamp(dt1.getTime())
todate = new java.sql.Timestamp(dt2.getTime())
println('Date:'+sdf1.format(dt1) + '-' + sdf1.format(dt2))
println('Timestamp:'+sdf1.format(fmdate) +'-' + sdf1.format(todate))
Date - java.util.Date
date001.getTime() - 取得 Date 毫秒數值 mSec since 1970/01/01
Calendar
cal001.getTime() - 取得 Calendar datetime 資料 since 1970/01/01
cal001.getTime().getTime() - 取得 Calendar 毫秒數值 mSec since 1970/01/01
Timestamp
java.sql.Timestamp dd001 = null;
Math:
Calendar cal01 = Calendar.getInstance(); // Declare Calendar object
cal01.setTime(someDate); // set Calendar object from date
cal01.add(Calendar.MINUTE, -90); // mathmatic add -90 minutes
cal01.add(Calendar.DATE, 1); // mathmatic add 1 day
java.util.Date d01 = cal01.getTime(); // Assign Calendar to Date object
java.util.Date date1 = new java.util.Date("12/15/2001");
java.util.Date date2 = new java.util.Date("10/30/2004");
long dayDiff = ((date2.getTime() - date1.getTime()) /86400000); //計算差異天數
Comparison (適用 Date & Calendar):
* if(cal01.after(cal02)) {} else {}
* if (dd001!=null) { } else { }
----- Use Groovy test -----
import java.text.*
import java.sql.*
println "Hello"
SimpleDateFormat fmt = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
java.util.Date dt = (java.util.Date) fmt.parse("2004/12/30 12:00:00");
Timestamp ts = new Timestamp(dt.getTime());
//println "dt= " "-"+fmt.format(dt)
//println "ts=" ts
//System.out.println(fmt.format(dt.getTime())); //java syntax
println fmt.format(dt.getTime())
----- Groovy Test 2 -----
import java.text.*;
import java.sql.Timestamp;
String str_date="2009-07-11"
DateFormat formatter = new SimpleDateFormat("yyyy-mm-dd");
java.util.Date date = (java.util.Date)formatter.parse(str_date);
java.sql.Timestamp timeStampDate = new Timestamp(date.getTime());
System.out.println("Today is " +timeStampDate);
----- Groovy Test final -----
import java.util.* ; // ArrayList
import java.text.* ; // SimpleDateFormat
import java.sql.* //Timestamp
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/MM/dd");
java.util.Date sysDate = new java.util.Date();
java.sql.Timestamp fmdate ; //= new java.sql.Timestamp ;
java.sql.Timestamp todate ; //= new java.sql.Timestamp ;
java.util.Date dt1 = (java.util.Date) sdf1.parse('2009/08/01')
java.util.Date dt2 = (java.util.Date) sdf1.parse('2009/08/02')
fmdate = new java.sql.Timestamp(dt1.getTime())
todate = new java.sql.Timestamp(dt2.getTime())
println('Date:'+sdf1.format(dt1) + '-' + sdf1.format(dt2))
println('Timestamp:'+sdf1.format(fmdate) +'-' + sdf1.format(todate))
JSP web page 間 datetime 資料傳遞
HTML只能傳遞 string , 收與發 JSP 必須配何訂定 date string format.
Send date page JSP:
< %
SimpleDateFormat sdf5 = new SimpleDateFormat("yyyy/MM/dd:HH:mm");
% >
< form action="rx.jsp" method= "post" name= "form1" >
< input name="date1_str" type="hidden" value="<%=sdf5.format(date1)%>" >
< /form >
Get date page JSP:
< %
SimpleDateFormat sdf5 = new SimpleDateFormat("yyyy/MM/dd:HH:mm");
String date1_str = request.getParameter("date1_str");
// convert string to date variable
java.sql.Timestamp date1 = null;
if ( date1_str != null && !date1_str.equals("") ) {
date1 = new java.sql.Timestamp(
Integer.parseInt(date1_str.substring(0,4)) - 1900 // year
,Integer.parseInt(date1_str.substring(5,7)) - 1 // month
, Integer.parseInt(dat1_str.substring(8,10)) // day
, Integer.parseInt(date1_str.substring(11,13)) // hr
, Integer.parseInt(date1_str.substring(14,16)), 0, 0); //mi
}
% >
Send date page JSP:
< %
SimpleDateFormat sdf5 = new SimpleDateFormat("yyyy/MM/dd:HH:mm");
% >
< form action="rx.jsp" method= "post" name= "form1" >
< input name="date1_str" type="hidden" value="<%=sdf5.format(date1)%>" >
< /form >
Get date page JSP:
< %
SimpleDateFormat sdf5 = new SimpleDateFormat("yyyy/MM/dd:HH:mm");
String date1_str = request.getParameter("date1_str");
// convert string to date variable
java.sql.Timestamp date1 = null;
if ( date1_str != null && !date1_str.equals("") ) {
date1 = new java.sql.Timestamp(
Integer.parseInt(date1_str.substring(0,4)) - 1900 // year
,Integer.parseInt(date1_str.substring(5,7)) - 1 // month
, Integer.parseInt(dat1_str.substring(8,10)) // day
, Integer.parseInt(date1_str.substring(11,13)) // hr
, Integer.parseInt(date1_str.substring(14,16)), 0, 0); //mi
}
% >
2009-06-16
Java Trunc & Mod
Java 好像沒有原始的 Numeric Truncate function , 需用數值計算時自動轉換數型態, 再用強制轉換整數型態:
usehh = (int) ((long)(trgHour * 100)) / 100 ;
Java 原始的 Numeric remainder operator "%" :
usemi = (int) ( (long) (trgHour * 60) % 60 ) ;
訂閱:
文章 (Atom)