Archive

‘專業技術’ 分類過的Archive

StringTokenizer 使用注意事項

2007年8月22日 尚無評論

最近在使用 StringTokenizer 發現有一些要注意的地方 與大家分享
不過可能大家都知道啦~^^
以下是我的程式碼

StringTokenizer parser = new StringTokenizer(s, v);
String[] str = new String[parser.countTokens()];
int i = 0;
while (parser.hasMoreElements()) {
str[i++] = (String) parser.nextToken();
}

當s=”,a,,c,,e,” 時,v=”,”
切開來的String arrey 竟然只有

str[0]=”a”;
str[1]=”c”;
str[2]=”e”;

那些空的不見了
最後用了s.split(“,”) 才可以看到str[0]=””;

str[1]=”a”;
str[2]=””;
str[3]=”c”;
str[4]=””;
str[5]=”e”;

以前原本想說StringTokenizer 和String.split 很像 沒想到有這種大的差異
PS.要提醒 用String.split 最後的那個, 它不會有值 …

Categories: JAVA Tags: ,

複製網頁-增加版權文字

2007年7月22日 尚無評論

這兩天在逛網站,看到一個不錯的功能,
當你在該網站上copy內容時,它會將一段版權的文字附加在你copy 的內容後面
蠻有趣的,在這個世代,網路已是必備,常會需要使用複製貼上的功能
這複製網頁增加版權文字功能~如有需要的人可以調整成自己所需來使用

document.body.oncopy=function(){
event.returnValue=false;
var t=document.selection.createRange().text;
var s=”此文章轉載自→Myhome http://herolin.webhop.me”;
clipboardData.setData('Text',t+'\r\n'+s+'\r\n\r\n');
}
Categories: Java Script Tags:

DWR for JAVA ajax 輕鬆入門 WEB 2.0

2007年7月15日 尚無評論

DWR(Direct Web Remoting) 

DWR是設計給Java語言的Ajax框架,讓開發人員可以利用JavaScript程式呼叫Java語法。

DWR的運作可分為兩個部分,一方面用在瀏覽器上,處理連接伺服器端Java程式,另一部分則是用來展示回傳資料。透過DWR呼叫Java的函式,它會處理連接處理的細節,而當資料被處理完成後,DWR就會執行回呼函式,以進行後續呈現的處理。

在安裝DWR時必須編輯Web應用程式的部署描述檔案,而且也要編輯DWR特定檔案。DWR配置檔案指定了可以遠端建立和呼叫的類別。檔案中包含伺服器程式碼的JAR檔案,另外還有JavaScript檔案,提供一些輔助函式,處理互動呈現的效果。

在使用上還蠻容易的,對於不太懂javascript的工程師想要跨到ajax的領域是一件很容易的事,他幾個sample都有寫到大致上運用時會如何寫法

對於ajax還不太瞭解的人,到以下連結,它說明的很詳細
iThome online   Ajax不只是炫技

如同這篇標題寫的,我個人也覺得ajax應該不只是看起來很炫或是搞的很複雜與一般web介面不太一樣的操作模式而已,個人認為ajax 有其二項重大的運用:
1.提高web程式的友善度,以往在開發web系統時,往往只能限於瀏覽器而無法開發如同application般的功能,這樣因為web之限制而讓使用者在操作上感到不便之情形可運用此技術大大降低

2.改善web寫程式的模式,精減系統,減少一些rework,例如 每次一查詢 所有的GUI要讓系統重新再編輯一次並傳送給使用者,使用ajax後,可以只傳送更新的資料,讓系統及網路都可提高其效益..

以下在javaword上有二個sample 還蠻容易讓人瞭解的
DWR 入門與應用(一)
DWR 入門與應用(二)

不過在使用ajax時,要特別注意系統安全性的問題…….

在第一次的使用上,花了不少時間在DWR官方網站找了很久 它提出的javascript工具(engine.js and Util.js)後來才知它已經包在DWR.jar裡 真是差點要把它的網站給翻了…=.=||| 

Categories: AJAX Tags: ,

排除Can\'t connect to local MySQL server through socket \'/var/lib/mysql/mysql.sock\' (13)

2007年5月5日 尚無評論

今天在Fedora 3 架設php + mysql

發現php 無法連線至mysql ,但可以直接透過console 介面 連線 mysql
而在php頁面回傳了以下訊息:

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13)

在網上查詢 有人是說mysql 未啟動,有人則是說並沒有/var/lib/mysql/mysql.sock
不過我發生的問題似乎都不是上述的原因
找到和自已最相近的答案,為以下兩個link

http://bugs.mysql.com/bug.php?id=12676

http://www.uplinux.net/article/2006/0815/article_1169.html

Fedora Core 3 在安裝時預設就會把SELinux的選項啟動
而這剛好應該是個Fedora Core 3 的BUG,
SELinux target policy的BUG,redhat並沒有為mySQL制定正確的target policy
所以導致無法連結
只要更新至selinux-policy-targeted-1.17.30-2.23以上的版本就能正常使用mySQL了

上述文件提供的下載連結目前都失效了,所以又找了一下發現有連結ok的
也在1.17.30-2.23之上版本

http://ftp.tn.edu.tw/Linux/apt/Fedora/FC3/RPMS.updates/

所以就下載 selinux-policy-targeted-1.17.30-3.19.noarch.rpm
下載完成後,就可執行以下指令

#rpm -Uvh selinux-policy-targeted-sources-1.17.30-3.19.noarch.rpm

如果你原來的系统安装了 selinux-policy-targeted-source,也需下載source的rpm文件
selinux-policy-targeted-sources-1.17.30-3.19.noarch.rpm

像我就要一併下載
checkpolicy-1.17.5-1.2.i386.rpm
policycoreutils-1.18.1-2.12.i386.rpm

因為source 也會需要更新這兩個package

再來就更新mysql相關的target policy更新mysql相關的targetpolicy

# rpm -q -l mysql-server | restorecon -R -v -f –
# rpm -q -l mysql | restorecon -R -v -f –

重起mysql的服務就會正常了.. ^^

最後,後記…..只怪自己用太舊的Linux OS…..狂哭.gif

Categories: Database Tags:

如何找出年月日的Timestamp

2007年4月4日 尚無評論

     原本想找如何利用Date() 可以得到年月日並轉成Timestamp ,不過查了JAVA API都沒有直接可以使用的method,所以就在網路上找尋,後來有看到這篇寫到一些關鍵點,小小測了一下就可以得到只有年月日的Timestamp

       SimpleDateFormat df = new SimpleDateFormat(“yyyy/MM/dd 00:00:00”);
       Date d1= df.parse(df.format(d.getTime()));
       System.out.println(d.getTime());
       System.out.println(df.format(d.getTime()));
       System.out.println(d1.getTime());

PS.Timestamp :就是從1970-1-1開始起算的毫秒數..是long型態

more..

Categories: JAVA Tags:
分頁: 上一頁 1 2 3 ... 18 19 20 21 22 23 24 25 26 27 28 下一頁