2009年9月30日 星期三

莫拉克


在較大的地圖上查看莫拉克颱風災情地圖 bit.ly/KKDVh

2009年9月28日 星期一

How we face sarrow


否認(denial)、憤怒(anger)、討價還價(bargaining)、沮喪(depression)、接受(acceptance) --這是Elizabeth Kubler-ross的理論中當人類臨終前的五階段,此五階段也適用於面對巨大災難時後的心境...

這是今天看完Gery's Anatomy season6 開頭所學習到的心得..也是近日來的心得

2009年9月26日 星期六

Google App Engine with Struts 2


簡單紀錄一下Google App Engine 中使用struts 2的方法
詳細圖示教學參考下列連結:


1.加入struts所需要的一些基本library

commons-fileupload-1.2.1.jar
commons-io-1.3.2.jar
commons-logging-1.1.jar
freemarker-2.3.13.jar
ognl-2.6.11.jar
struts2-core-2.1.6.jar
xwork-2.1.2.jar

2.建立ognl listerner,將 OgnlRuntime的SecurityManager設定為null,listener內容如下:


package util.listener;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.http.HttpSessionAttributeListener;
import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;

import ognl.OgnlRuntime;

/**
* 建立ognl listener **
*/
public class InitListener implements ServletContextListener,
HttpSessionListener, HttpSessionAttributeListener {

public InitListener() {
}

public void contextInitialized(ServletContextEvent sce) {
OgnlRuntime.setSecurityManager(null);
}

public void contextDestroyed(ServletContextEvent arg0) {
// TODO Auto-generated method stub
}

public void sessionCreated(HttpSessionEvent arg0) {
// TODO Auto-generated method stub
}

public void sessionDestroyed(HttpSessionEvent arg0) {
// TODO Auto-generated method stub
}

public void attributeAdded(HttpSessionBindingEvent arg0) {
// TODO Auto-generated method stub
}

public void attributeRemoved(HttpSessionBindingEvent arg0) {
// TODO Auto-generated method stub
}

public void attributeReplaced(HttpSessionBindingEvent arg0) {
// TODO Auto-generated method stub
}

}

再於web.xml中加入listener


com.jun.util.listener.InitListener

2009年9月23日 星期三

創見microSDHC 8GB+原廠P3專用讀卡機組

P1010081

由於最近公司瀰漫著一股"買買買"的風氣,對於一想要買個容量大點的隨身碟的我,也就上網搜尋了一番,原先最想買的是網路上最推薦的
TDK Trans-it Mini USB 2.0迷你高速隨身碟 16GB 尊爵藍跟


TDK Trans-IT Edge USB 2.0 16GB 銀河高速隨身碟

不過這一切都在下標後,迅速看見了創見這款8GB的micro SDHC的T-flash卡
+讀卡機組,既符合我想要體積小,速度快,更可以滿足我多用途的需求..所以就二話不多說,馬上改買這款記憶卡了
最後附上另外一張由Giroro開箱照
P1010079

2009年9月17日 星期四

syntaxhighlighter 2.0 blogger 文章中插入程式碼的好工具

最近開始想要在blogger上貼點程式碼,當作自己的回憶筆記..(發現寫些電影終究沒人看XD)
再找尋了很多語法後,找到了這個最符合需求的syntaxhighlighter,一個用javascript達到顯示程式碼的好工具
google project:http://code.google.com/p/syntaxhighlighter
作者網站:http://alexgorbatchev.com/wiki/SyntaxHighlighter 記得Donate一下

建置步驟如下:
1.下載需要的檔案
2.加入js連結,範例如下







yoursite換成你的檔案的空間即可
3.接著加入

SyntaxHighlighter.config.bloggerMode = true;
SyntaxHighlighter.ClipboardSwf = 'http://yoursite/clipboard.swf';
SyntaxHighlighter.all();

bloggerMode可解決blogger會幫你自動填br tag的問題
clipboard.swf則提供檢視原始碼 複製原始碼的flash檔
4.最後在你想要貼的code前面使用pre這個tag即可
 

<pre class="brush: 顯示的語言種類;">
code....
</pre>

相關參考文章
http://sharedderrick.blogspot.com/2007/12/blogger-syntaxhighlighter.html
http://www.inote.tw/2009/02/blogger.html

2009年9月15日 星期二

Google App Engine 二三事


自從Google佛心來的提供了jvm based的Google App Engine環境後..就一直很想在上面開發點東西,順便紀錄點心得


1.前陣子為了非常瑣碎的人工化抽籤機制,利用了Google Web Toolkit弄了個可以旋轉的生死籤系統...恩..非常多的bug..但是不知為啥沒有很想修


2.2009/09/12 這週末開始著手使用google提供的Big Table,目前提供了JPA與JDO這兩種方式對資料庫作存取,順便整合了提供的jsp與servlet,弄了各簡單的留言板


3.2009/09/15 今天整合了Google Accounts API(http://code.google.com/intl/zh-TW/appengine/docs/java/users/)與web xml設定中之 元素,對url存取進行限制,讓只有該application開發者之google帳號驗證後才可存取


4.2009/09/16 企圖整合JavaMail,不過太累了...delay中


範例如下:


import java.util.Properties;
import javax.mail.AddressException;
import javax.mail.InternetAddress;
import javax.mail.MessagingException;
import javax.mail.MimeMessage;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;

// ...
Properties props = new Properties();
Session session = Session.getDefaultInstance(props, null);

String msgBody = "...";

try {
Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress("admin@example.com"));
msg.addRecipient(Message.RecipientType.TO,
new InternetAddress("user@example.com"));
msg.setSubject("Your Example.com account has been activated");
msg.setText(msgBody);
Transport.send(msg);

} catch (AddressException e) {
// ...
} catch (MessagingException e) {
// ...
}




補充:Google可以使用JavaMail來處理郵件發送,有下列事項要注意:
1.限制是只能使用Gmail帳號
2.不用指定SMTP server
3.附件檔案限制為1MB
4.加簽之mail測試過再補上


2009/09/27
Strurs 2 on GAE

2009年9月11日 星期五

Adventureland


年輕的時候 我們總會搞砸點什麼,因為這就是年輕...

趁著週末的閒暇,挖出這部影片來看...裡面的故事敘述著美國80年代的1987年的一個青少年的故事,劇情設定的很簡單,為了生計而到冒險樂園打工的男主角,認識了同為同事的女主角並交往,劇中充滿了濃濃的80年代的判逆風,沒有絕對的壞,快樂的原因也很單純,沒有狗血的大悲大喜,是部很輕鬆的小品..讓人不自主的懷念起那段單純的年代...