You are on page 1of 11

JSP 網頁設計語法整理 撰寫人:陳志華

JSP 網頁設計語法整理

JSP 網頁設計語法整理.................................................................................................1
變數篇....................................................................................................................2
運算子篇................................................................................................................3
流程控制篇............................................................................................................4
副函式篇................................................................................................................6
網頁間輸出入篇....................................................................................................9
Session 與 Cookie 篇............................................................................................10
資料庫篇..............................................................................................................11

第1頁
JSP 網頁設計語法整理 撰寫人:陳志華

變數篇

1、 宣告:資料型別 變數名稱;
2、 一維陣列宣告:資料型別 變數名稱[ ]=new 資料型別[Size];
3、 多維陣列宣告:資料型別 變數名稱[ ][ ]=new 資料型別[Size][Size];
4、指定敍述:變數名稱=變數值

例:
int value;
Value=10;

String str;
Str=”字串”

int array[]=new int[10]

第2頁
JSP 網頁設計語法整理 撰寫人:陳志華

運算子篇

1、算術運算子
運算子 說明 範例
- 負數 -5
* 乘法 5*3=15
/ 除法 15/3=5
% 取餘數 14 % 3=2
+ 加法 3+5=8
- 減法 5-3=2

2、字串連結運算子
運算子 說明 範例
+ 字串連結 “ab”+”cd”=”abcd”

3、比較運算子
運算子 說明 範例 結果
== 等於 1=2 False
!= 不等於 1!=2 True
< 小於 1<2 True
> 大於 1>2 False
<= 小於等於 1<=2 True
>= 大於等於 1>=2 False

4、邏輯運算子
運算子 說明
Not(!) 非,傳回運算元相反的值
And(&&) 且,連結的兩個運算元都為 True,則運算式為 True
Or(||) 或,只要任一個為 True,則運算式為 True

第3頁
JSP 網頁設計語法整理 撰寫人:陳志華

流程控制篇

1、If…Then:
If(條件式){
執行程式碼;
}

2、If…Then…Else:
if(條件式){
執行程式碼;
}
else{
執行程式碼;
}

3、If…Then…ElseIF:
if(條件式){
執行程式碼;
}
else if(條件式){
執行程式碼;
}
else{
執行程式碼;
}

4、For…Loop
for(i=起始值; i<=結束值; i+=每次增減值){
執行程式碼;
}

在迴圈中,可使用 break 中斷迴路


for(i=起始值; i<=結束值; i+=每次增減值){

break;

}

第4頁
JSP 網頁設計語法整理 撰寫人:陳志華

例:
for(i=1; i<=10; i+=1){
Total=Total+i;
}

5、Do While…Loop
do while(條件式){
執行程式碼;
}

在迴圈中,可使用 Exit Do 中斷迴路


do while(條件式){

break;

}

例:
int i=1;
do while(i<=10){
Total=Total+i;
i+=1;
}

第5頁
JSP 網頁設計語法整理 撰寫人:陳志華

副函式篇

1、函數定義與使用
1. 建立
<%!
回傳資料型別 函數名稱(參數串列){
… //程式碼
return 傳回值;
}
%>

例如:
<%!
double CircleArea(double radius){
double PI=3.1415926;
return PI*radius*radius;
}
%>

2. 呼叫
回傳資料型別 變數=函數名稱(傳入參數串列);

例如:
double area= CircleArea(5);

2、常用內建函數-時間函數
1. 時間取得與設定
Date 時間變數=new Date(long 毫秒數);
Date 時間變數=new Date(int 年, int 月, int 日);
Date 時間變數=new Date(int 年, int 月, int 日, int 時, int 分);
Date 時間變數=new Date(int 年, int 月, int 日, int 時, int 分, int 秒);
函數名稱 函數說明
取得
時間變數.getYear(); 取得日期的年值,以 1900 為基準
如:1998 年,回傳 98
時間變數.getMonth(); 取得日期的月值
以 0 代表 1 月,以 1 代表 2 月,依此類推
時間變數.getDate(); 取得日期的日值
時間變數.getDay(); 取得日期的星期值

第6頁
JSP 網頁設計語法整理 撰寫人:陳志華

時間變數.getHours(); 取得日期的小時值
時間變數.getMinutes(); 取得日期的分值
時間變數.getSeconds(); 取得日期的秒值
設定
時間變數.getYear(int year); 設定日期的年值,以 1900 為基準
時間變數.getMonth(int month); 設定日期的月值,以 0 代表 1 月
時間變數.getDate(int date); 設定日期的日值
時間變數.getDay(int hours); 設定日期的星期值
時間變數.getHours(int hours); 設定日期的小時值
時間變數.getMinutes(int minutes); 設定日期的分值
時間變數.getSeconds(int seconds); 設定日期的秒值

2. 時間格式處理
SimpleDateFormat simpledateformat 物件=new SimpleDateFormat(日期/時間形式);
Date 時間變數=simpledateformat 物件.parse();
欄位意義 完整形式 簡單形式
紀元(BC/AD) G
年 yyyy yy
月 MMM MM
日 dd d
時區 zzzz zz
星期 EEEE EE
AM/PM a
小時(1-12) hh h
小時(0-11) KK K
小時(0-23) HH H
小時(1-24) kk k
分 mm m
秒 ss s
毫秒 SSS SS
一年的第幾日 DDD D
一月出現的第幾個星期 F
如:第 2 個星期日
一年的第幾週 ww w

3、常用內建函數-字串函數
函數名稱 函數說明
字串變數.equals(“字串”); 字串比較,傳回 true or false
字串變數.equals(字串物件); 字串比較,傳回 true or false
字串變數.length(); 取得字串長度,傳回 int
字串變數.toLowerCase(); 轉換成小寫
字串變數.toUpperCase(); 轉換成大寫
字串變數.substring(int startIndex, int endIndex); 擷取部分字串,從 start 到 end
回傳 String
字串變數.indexOf(‘字元’); 尋找字元,傳回 int

第7頁
JSP 網頁設計語法整理 撰寫人:陳志華

字串變數.indexOf(“字串”); 尋找字串,傳回 int


字串變數.lastIndexOf(‘字元’); 尋找字元最後位置,傳回 int
字串變數.lastIndexOf(“字串”); 尋找字串最後位置,傳回 int
字串變數.replace(char oldChar,char newChar); 字元取代,將 old 置換成 new

4、常用內建函數-數學函數
函數名稱 函數說明
Math.random(); 亂數函數,產生一介於 0.0 與 1.0 的 double 數值
Math.abs(任何數字型別); 傳回數值的絕對值
Math.sqrt(double n); 傳回運算式的 n 平方根
Math.exp(double n); 傳回運算式的自然指數的 n 次方
Math.pow(double a, double b); 傳回運算式 a 的 b 次方

第8頁
JSP 網頁設計語法整理 撰寫人:陳志華

網頁間輸出入篇

1、輸 HTML 標籤與文字內容


out.print(字串變數);

例:
out.print(str);
out.print(“Test” & “<br>”);

2、轉向到其它的網頁
response.sendRedirect("網頁路徑");

例:
response.sendRedirect("show.jsp");
response.sendRedirect(“http://tw.yahoo.com/”);

3、 網頁間傳送變數,取值方式一 →透過網址
如:網頁名稱.jsp?變數名稱 1=10
變數名稱 2=request.getParameter (“變數名稱 1”)

例:
Test.asp?Value1=10
Value2=request.getParameter (“Value 1”)

在連結 Test.jsp 這個網頁的同時傳送 Value1 這個變數,而透過


request.getParameter 將 Value1 的值取出指定給 Value2

4、 網頁間傳送變數,取值方式二 →透過表單
如:利用表單、文字方塊、核取方塊、清單方塊…等
變數名稱 2=request.getParameter (變數名稱 1)

例:
Value2=request.getParameter (Value 1)

透過 Request.Form 將表單裡 Value1 的值取出指定給 Value2

第9頁
JSP 網頁設計語法整理 撰寫人:陳志華

Session 與 Cookie 篇

1、Session 使用
Session 建立:
session.setAttribute(“Session 變數名稱”,變數值);

Session 取得:
String 變數名稱=session.getAttribute(“Session 變數名稱”).toString();

Session 改變:
session.setAttribute(“Session 變數名稱”,變數名稱);

Session 清除:
Session.invalidate();
此指令會清除所有 Session 值

2、Cookie 使用:
Cookie 建立:
Cookie Cookie 變數名稱=new Cookie(“資料名稱”,值);
Response.addCookie(Cookie 變數名稱);

Cookie 取得:
Cookie[ ] Cookie 陣列變數=request.getCookies();
for(int i=0; i<= Cookie 陣列變數.length; i++){
Cookie temp=cookies[i];
if(temp.getName().equals(“資料名稱”)){
取得 Cookie 資料,如: String str=URLDecoder.decode(temp.getValue());
}
}

第 10 頁
JSP 網頁設計語法整理 撰寫人:陳志華

資料庫篇

1、連結資料庫
1. 載入 JDBC-ODBC 驅動程式
在 Java 應用程式首先需要驅動程式,因為是透過 ODBC 存取資料庫,所以載入
JDBC-ODBC 驅動程式,如下所示:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

2. 建立 Connection 連結物件
在載入 JDBC-ODBC 驅動程式後,就可以使用 DriverManager 類別的
getConnection()類別方法建立 Connection 物件,如下所示:
Connection Connection 物件變數=DriverManager.getConnection("jdbc:odbc:資料庫
名稱");

3. 建立 JDBC 的 Statement 物件
Statement 物件的目的是執行 SQL 指令,在建立好 Connection 物件後,就可以使
用 createStatement()方法建立 Statement 物件,如下所示:
Statement Statement 物件變數=Connection 物件變數.createStatement();

2、關閉連結資料庫
Statement 物件變數.Close();
Connection 物件變數.Close();

3、開啟資料錄
ResultSet RecordSet 物件變數= Statement 物件變數.executeQuery(“SQL 語法”);

4、關閉資料錄
RecordSet 物件變數.Close()

5、RecordSet 語法
語法 說明
RecordSet 物件變數.next(); 移到下一筆,若沒有資料則回傳 null

第 11 頁