2011年11月7日 星期一

在Blogger中嵌入Facebook分享按鈕

(http://www.iconfinder.com/icondetails/34144/122/button_facebook_name_share_icon)

目前在blogger中加入Facebook分享按鈕(share button),有兩種方式。

2011年9月30日 星期五

Spring MVC + Hibernate JPA @Transactional 沒作用

版本: Spring 3 MVC + Hibernate 3.6 JPA

問題: 透過dao對資料庫操作時,無法新增(insert)、修改(update)及刪除(delete),沒有錯誤訊息,只能做select的動作。


2011年8月31日 星期三

SOLR - 部署(一)






簡介:
開發網站一定會有搜尋的功能,資料量小的情況下,可以直接用sql查詢,但資料量一大很快就遇到了效能問題,或是想要做全文檢索。
因此就會導入搜尋引擎,要用就要用最多人用的,遇到問題也比較快找到解,開放原始碼中目前最多人使用的是Lucene,
而SOLR就是Lucene的web版,還沒玩過的快來試試看。

2011年8月12日 星期五

一對多的資料表串接成一個欄位

原因:我要組成一張view,但是關聯是一對多的資料表,這時要將其中一個欄位用分隔符號串成一個欄位。看例子會比較好懂。

例子:如下圖是參考資料(Reference)以及實體檔案(RFile)的關聯表,一筆參考資料,將有多個實體檔,現在我要將這兩張表串成一張view,而且rid不能重複,FileName用分號作區隔串成一個欄位。

2011年7月19日 星期二

Facebook API for Java - 取得使用者相關資訊 (二)

圖片來源:http://www.roars.in/facebook-application-developer-india.html

請先下載 facebook-java-api

需要的jar有三個
facebook-java-api-3.0.2.jar
facebook-java-api-schema-3.0.2.jar
runtime-0.4.1.5.jar


2011年7月14日 星期四

Framework 樣板之Struts2 Annotation + Spring3.1 + Hibernate3.6 JPA (四)


版本:Struts2.2.3 + Spring3.1 + Hibernate3.6

包含:Displaytag、Tiles 、 OpenSessionInView 及 連接DB

資料庫:MS SQL2005


Schema:在/BlankS2SH/WebContent/dev/sql.txt,為了方便說明,僅用兩張Table。

2011年7月13日 星期三

Facebook API for Java - Login (一)

 最近幾乎每個網站都結合Facebook login,Facebook API是現在很熱門的東西,上網看了其他人的教學,發現Facebook改版太快了,寫法也不一樣了。所以自己來發一篇

1. 先加入開發人員應用程式

2. 右上,建立新的應用程式

3. 填入Canvas URL,這是登入後,要導回自己的系統的URL


2011年7月5日 星期二

Framework 樣板之Spring3.1 MVC Annotation + Hibernate3.6 JPA(三)



版本:Spring3.1 + Hibernate3.6

包含:Displaytag、Tiles 、 OpenSessionInView 及 連接DB

資料庫:MS SQL2005

Tile2 注意事項

官方網站:http://tiles.apache.org/

需要tiles-api-2.2.2.jar、tiles-core-2.2.2.jar、tiles-jsp-2.2.2.jar、tiles-servlet-2.2.2.jar、tiles-template-2.2.2.jar

問題:
java.lang.NoClassDefFoundError: org/apache/tiles/web/startup/TilesListener


解決方式:
在tiles2.0.x是包在tiles-core-2.0.x.jar中,但在tiles2.2.x是包在tiles-servlet-2.2.x.jar,所以要記得加入喔。

2011年6月30日 星期四

Framework 樣板之Struts1 + Spring3 + Hibernate3 JPA教學(二)


版本:Struts1.3.10 + Spring3.1 + Hibernate3.6 JPA

包含:Displaytag、Tiles 、 OpenSessionInView 及 連接DB

資料庫:MS SQL2005

Schema:在/HibernateJPA/WebContent/dev/sql.txt,為了方便說明,僅用兩張Table。

2011年6月17日 星期五

Framework 樣板之Struts1 + Spring3 + Hibernate3教學(一)


版本:Struts1.3.10 + Spring3.1 + Hibernate3.6

包含:Displaytag、Tiles 、 OpenSessionInView 及 連接DB
資料庫:MS SQL2005

Schema:在\BlankSSH\dev\sql.txt,為了方便說明,僅用兩張Table。

2011年6月16日 星期四

Framework 樣板(序)


這是2011年初國外網站統計的結果,Spring和Hibernate會成為前兩名,因為這兩種可以搭配其它的Framework一起整合使用,所以人氣如此高。GWT短短幾年就超越STRUTS衝到第三名,來勢洶洶。STRUT很難在成長,但目前有太多專案用此架構,會維持在10%。STRUTS2自從2007年推出以來,有漸漸在成長中,今年推出2.2版,應該是更加穩定。這幾種Framework你能不學嘛?

Spring3 MVC 延遲加載(Lazy Load)的問題

環境:Spring3 MVC + Hibernate3.6 JPA

錯誤訊息:

org.hibernate.LazyInitializationException: could not initialize proxy - no Session

原因:hibernate session可由spring在控制,hibernate允許對關聯對象、屬性進行延遲加載,但是必須保證延遲加載的操作限於同一個Hibernate Session 範圍之內進行。若Session關閉後,會導致延遲加載資料的訪問異常。

2011年6月8日 星期三

Dynatree教學

這一套也free的,也有結合contextMenu,最重要的是,官方網站有詳細的教學,個人感覺比jstree更好上手。目前發現一個小缺點,在新增節點時,無法在節點上輸入名稱,還是可以用,跳一個對話框出來輸入節點名稱來解決。

官方網站:Dynatree

下面將會整理一些常用的功能,來做為範例。

2011年5月17日 星期二

JQUERY及JAVA開發常用套件

jquery plugin
1. 畫圖工具

JQPLOT

2. 表格

DisplayTag
優點:相當容易使用。
缺點:2008之後沒有在更新。中文匯出有問題,需要修改原始碼。
JQGRID

3. TREE

JSTREE  教學

DYNATREE

DHTMLTREE  (要付費)

4. 文字編輯

FCKEDIT

5. 多檔案上傳

Multiple File Upload
SWFUPLOADER  (ie不支援)


JAVA

1. 工具

GUAVA
google出的函式庫,內有許多好用function,尤其是collation,可以省下開發的時間。


BONDCP 
目前雖然是0.7版,還持續有更新,網路上可以找到很多測試結果都比c3p0效能好。

jstree教學

這一套是free的jquery套件,而且有整合contextmenu。由於官網的教學寫的不太詳細,所以我在這整理一下用法。
官方網站:jstree

2011年3月31日 星期四

hibernate升級至3.6

先到官方http://sourceforge.net/projects/hibernate/files/hibernate3/下載jar檔
裡面包含了所有需要用到的jar

要替換的jar有
hibernate3.jar
antlr-2.7.6.jar(舊版請移除)

新增加的jar
hibernate-jpa-2.0-api-1.0.0.Final.jar

2011年3月6日 星期日

JavaScript parseInt 08或09 回傳0的問題

原因:
這是一個著名的問題,parseInt('01')到07都沒問題,只有08和09回傳。

2011年1月30日 星期日

tomcat下開啟gzip壓縮

在tomcat下\conf\server.xml
增加Connector屬性,範例如下:

compression:on開啟壓縮, off關閉壓縮,forces強制使用壓縮,預設值為off。
compressableMimeType:使用HTTP壓縮的MIME類型,使用逗號作分隔,預設值為text/html,text/xml,text/plain。
compressionMinSize:開啟壓縮的輸出內容大小,預設值為 2KB,代表超過2K的檔案才會被壓縮
noCompressionUserAgents: 不開啟壓縮的瀏覽器,預設值為空。

2011年1月23日 星期日

偵測 MS sql INSERT,DELETE and UPDATE 事件

原因:想要再新增、刪除和修改時,做其他事情。
例如:把有異動的資料塞到其他table,就可以針對異動資料做其他處理。

方法:在table展開的觸發程序按右鍵選新增或是直接執行下面的sql(TABLENAME要修改)