顯示具有 WebTechnique 標籤的文章。 顯示所有文章
顯示具有 WebTechnique 標籤的文章。 顯示所有文章

2007年4月14日 星期六

當Java遇上RoR

當Java遇上RoR
RoR(Ruby on Rails)的開發速度以及彈性可能是網站開發者所嚮往的 , 但是因為執行效能和函式庫支援等等的因素又不太敢用 , 因此 , 如果能把Java和RoR結合在一起 , 那不是一件很讚的事情嗎!!!
的確 , 已經有人想到要這樣做了 , 所以 , 一個新的語言又出現了 : Grails

我個人是還滿好奇為什麼Grails不叫做Jrails呢? 還是G有什麼特別的意思~這我不太清楚 , 總而言之 , Grails對熟悉Java的網站開發人員是有相當大的吸引力 , 目前在網路上也相當活躍了 , 但是Grails的IDE似乎都還不夠成熟 , 雖然已經有了Grails Eclipse Plug-In , 但離真正成熟完整還有一段距離 , 但相信不久的將來 , Grails能廣泛的被大家使用啦!!!

2007年1月30日 星期二

JSON Introduction

JSON Introduction

JSON 官方網站 : http://www.json.org/

What is JSON?
JSON 的英文全名就是「JavaScript Object Notation」,它實際上就是物件陣列的文字表示法。 JSON 有什麼用呢?你可以當它是種資料交換格式,就像 XML 一樣,你可以將這兩種格式視為相同,可以互相轉換,但不能互相取代。
假設網站回傳一份 XML 文件,我們使用JSON去 parse會比用DOM model 來的簡單明瞭。所以JSON跟Javascript 配合的好處是無庸置疑的。

Sample JSON example:
"student": [ { "name": "Andy", "class": 3, "number": 12 }, { "name": "Mary", "class": 2, "number": 23 } ]


舉例來說,上面的 JSON 我們可以改寫成如下的 XML 文件:



其實XML 是一種很好的資料表示格式,但有時候它就是太囉唆了,JSON 可以簡化這種表示格式,用較少的字元達到相同的效果。因此 JSON 很適合應用在輕量級的網頁應用,為什麼適合在網頁應用呢?因為 JSON 是以 Javascript 的 ECMA-262 3rd Edition 的標準為基準,根本就是 Javascript 的一部分,但是,它也可以用在別的地方,至於還可以在哪裡用?這應該不是重點,總之在web上用最合適啦。


How to use JSON?
舉例,如果你有一串 JSON 的字串,如下:
var json = '{"student": [ {"name": "Andy", "class": 3, "number": 12 }, {"name": "Mary", "class": 2, "number": 23 }]}';

用法如下:

var obj = eval ("(" + json + ")");alert('This school has ' + obj.student.length + 'student.');alert(obj.student[0].name);alert(obj.student[1].name);

上述是利用 eval() 來將 JSON 字串轉成Object。但是呼叫 eval() 是危險的,因為他會執行任何字串中的 Javascript 程式碼,容易有危險,所以一般都建議引用官網上所提供的parser :


網址- http://www.json.org/json.js

var obj = JSON.parse(json);

此外,也可以把一個Object轉換成 JSON 字串:



Relation with AJAX and Other
我們在實作 AJAX 時,通常有兩種作法:

(1). 伺服器回傳一段 Javascript 由瀏覽器去執行。

(2). 伺服器回傳一段 XML 由瀏覽器去解讀。

一個控制權在Server端,一個則是在Client端,其實各有利弊,使用的時機也不太一樣。但是我們可以用JSON來代替(2)的XML,其中的好處已在一開始說明過了。

與AJAX一樣 ,一般 Web UI 應用也是可以使用 JSON 的,現在一般的 UI 設計都是以Server端的 PHP、ASP、CGI及JSP 等來控制網頁的編排。其實JSON 可以與 PHP…等Server端技術之Object互相轉換,而且同樣可以在Client端將資料轉換成 JSON 格式,到了Server端,轉換成Object,一樣可以做資料檢查驗證等,甚至能轉換成DataBase的格式,且存進DataBase。

其他資源:

2007年1月27日 星期六

AJAX&PHP整合應用(一)

(一)建立Javascript與PHP的溝通方式。

要使AJAX能和PHP整合,最重要就是讓Javascript能呼叫PHP,下面提供一個例子,使Javascript呼叫PHP,然後印出PHP的執行內容。

Step1先建立一個index.php檔案。程式碼如下:























Step2:建立一個data.php檔,此檔案是要被Javascript呼叫的。程式碼如下:


Step3瀏覽index.php,按下call PHP,則javascript就會去呼叫data.php檔案,在下一行就會印出call data.php successfully!。

程式碼說明index.php裡 當中的程式碼即是Javascript,也是AJAX的核心(XMLHttpRequest),接下來function getData()就是利用XMLHttpRequestObject來實作本範例的功能。