* Dialog
- 會縮成dialog的樣式。
- 是對window set theme(?)。
* AlertDialog
- 預設是dialog的樣式。
- 但若設定theme,則是set attri on panel(?),所以並不會自動縮成dialog的樣式。
2011年8月31日 星期三
[Oracle] ORA-01489: 字串過長
ORA-01489
Scenario:
使用sys_connect_by_path()
Message:
Cause: java.sql.SQLException: ORA-01489: 串接而成的字串過長
; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException:
字串串接太長 , default is VARCHAR2 (4000bytes)
20110912
JDBC 某些 driver 會有預設值限制,產生類似的問題,而用不同版本改善,可 survey 此方向相關資訊。
Scenario:
使用sys_connect_by_path()
Message:
Cause: java.sql.SQLException: ORA-01489: 串接而成的字串過長
; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException:
字串串接太長 , default is VARCHAR2 (4000bytes)
20110912
JDBC 某些 driver 會有預設值限制,產生類似的問題,而用不同版本改善,可 survey 此方向相關資訊。
[Oracle ] ORA-00600
ORA-00600
Scenario:
使用 rownum 則會出現 exception。
Message:
Caused by: java.sql.SQLException: ORA-00600: 內部錯誤代碼, 引數: [evapls1], [], [], [], [], [], [], [].....
Solution:
#ALTER SYSTEM SET "_optimizer_filter_pred_pullup"=FALSE;
Scenario:
使用 rownum 則會出現 exception。
Message:
Caused by: java.sql.SQLException: ORA-00600: 內部錯誤代碼, 引數: [evapls1], [], [], [], [], [], [], [].....
Solution:
#ALTER SYSTEM SET "_optimizer_filter_pred_pullup"=FALSE;
2011年8月28日 星期日
[Java] Thread and Process
* Program
- 執行的程式,類似OO中的 class。
* Process
- 程式中的執行程序,一個程式可以執行多次產生多個process,類似OO中的Object。
- 一個process由memory space和thread組成。
* Thread
- 在Java中要實現執行緒功能,可以實作Runnable介面,Runnable介面中只定義一個run()方法,然後實例化一個 Thread物件時,傳入一個實作Runnable介面的物件作為引數,Thread物件會調用Runnable物件的run()方法,進而執行當中所定義的流程。
* Overview
- 一個process可以有多個thread。
- 同個process中的thread使用相同的memory space,但這些thread擁有各自的stack,也就是說,thread能透過reference取到相同的object,但local variable是各自分開的。
* Reference
- Thread(執行緒)
- 實作 Runnable 介面
- 執行的程式,類似OO中的 class。
* Process
- 程式中的執行程序,一個程式可以執行多次產生多個process,類似OO中的Object。
- 一個process由memory space和thread組成。
* Thread
- 在Java中要實現執行緒功能,可以實作Runnable介面,Runnable介面中只定義一個run()方法,然後實例化一個 Thread物件時,傳入一個實作Runnable介面的物件作為引數,Thread物件會調用Runnable物件的run()方法,進而執行當中所定義的流程。
* Overview
- 一個process可以有多個thread。
- 同個process中的thread使用相同的memory space,但這些thread擁有各自的stack,也就是說,thread能透過reference取到相同的object,但local variable是各自分開的。
* Reference
- Thread(執行緒)
- 實作 Runnable 介面
2011年8月27日 星期六
[Web] J2EE and struts
* J2EE
- 就有提供 interceptor
- request.setAttribute 傳送屬性到前端
* struts
- extends ActionSupport -> 可使用 setter/getter 處理屬性
- 可利用 interceptor 做類似 spring actionController 功能
- example:
<package name="packageName" namespace="/nameSpaceName">
<default-interceptor-ref name="interceptorRef" />
<action class="className" name="actionName">
<result name="resultName">jspName</result>
</action>
</package>
URL: /context/nameSpaceName/actionName.action
className: 此 action 所對應執行的 class (bean)
- 就有提供 interceptor
- request.setAttribute 傳送屬性到前端
* struts
- extends ActionSupport -> 可使用 setter/getter 處理屬性
- 可利用 interceptor 做類似 spring actionController 功能
- example:
<package name="packageName" namespace="/nameSpaceName">
<default-interceptor-ref name="interceptorRef" />
<action class="className" name="actionName">
<result name="resultName">jspName</result>
</action>
</package>
URL: /context/nameSpaceName/actionName.action
className: 此 action 所對應執行的 class (bean)
[Android] SharedPreferences
* 輕量級以 xml 儲存的方式
* 會放在 /data/data/package name/shared_prefs
* global variable
* xml 處理時 Dalvik 會用底層 xml parser 解析
* 會放在 /data/data/package name/shared_prefs
* global variable
* xml 處理時 Dalvik 會用底層 xml parser 解析
The Java Naming and Directory Interface (JNDI)
(from JWorld@TW Java論壇 - JNDI觀念)
* The Java Naming and Directory Interface (JNDI) is a Java API for a directory service that allows Java software clients to discover and look up data and objects via a name.
* Like all Java APIs that interface with host systems, JNDI is independent of the underlying implementation.
* Additionally, it specifies a service provider interface (SPI) that allows directory service implementations to be plugged into the framework. It may make use of a server, a flat file, or a database; the choice is up to the vendor.
* 在 J2EE 中,JNDI 是把 J2EE 應用程式何在一起黏著劑,將資源取名字,提供命名服務,以可以根據名字來找到資源。假設要連的對象是書,而JNDI是圖書管理員,把書碼告訴管理員便會找到相對應的書
* JNDI is a connection pool,工作效率比直接連接好。
* JNDI 是一種樹狀的檔案系統結構,每個節點都可以儲存任何物件,客戶端程式可以透過 JNDI path 來查詢所儲存的物件或是更新物件的值,延伸到 client-server 的觀念,就好比存取網路磁碟的檔案一樣。
* 只不過 JNDI 的路徑的定義跟檔案系統的定義不太相同,儲存的內容也不限是檔案而是廣義的物件。
* Reference
- 请问个位JNDI到底是什么意思呀,始终没有理解清楚 - Java / Java SE
- Java Naming and Directory Interface - Wikipedia, the free encyclopedia
- JWorld@TW Java論壇 - JNDI觀念
* The Java Naming and Directory Interface (JNDI) is a Java API for a directory service that allows Java software clients to discover and look up data and objects via a name.
* Like all Java APIs that interface with host systems, JNDI is independent of the underlying implementation.
* Additionally, it specifies a service provider interface (SPI) that allows directory service implementations to be plugged into the framework. It may make use of a server, a flat file, or a database; the choice is up to the vendor.
* 在 J2EE 中,JNDI 是把 J2EE 應用程式何在一起黏著劑,將資源取名字,提供命名服務,以可以根據名字來找到資源。假設要連的對象是書,而JNDI是圖書管理員,把書碼告訴管理員便會找到相對應的書
* JNDI is a connection pool,工作效率比直接連接好。
* JNDI 是一種樹狀的檔案系統結構,每個節點都可以儲存任何物件,客戶端程式可以透過 JNDI path 來查詢所儲存的物件或是更新物件的值,延伸到 client-server 的觀念,就好比存取網路磁碟的檔案一樣。
* 只不過 JNDI 的路徑的定義跟檔案系統的定義不太相同,儲存的內容也不限是檔案而是廣義的物件。
* Reference
- 请问个位JNDI到底是什么意思呀,始终没有理解清楚 - Java / Java SE
- Java Naming and Directory Interface - Wikipedia, the free encyclopedia
- JWorld@TW Java論壇 - JNDI觀念
[Java] if/else and codeStyle
* switch performance is better than if/else
* tab may cause error when gen java doc
* tab may cause error when gen java doc
[Layout] ratingBar, listView
* ratingBar
if maxHeight >= height of image 星星亮時 角會衍生線出來(?)
* 若對 content provider 修改/刪除/新增 欄位都能更新table
* android:layout_height:match_parent is not affect scrollview
if maxHeight >= height of image 星星亮時 角會衍生線出來(?)
* 若對 content provider 修改/刪除/新增 欄位都能更新table
* android:layout_height:match_parent is not affect scrollview
[Oracle] import data
index
提高搜尋資料的速度,類似於word內的索引,若沒有index,則是從第一筆的一筆一筆比對資料來確認是否符合條件,若有設的話則當符合index條件則會直接到已符合此index條件下的資料篩選
TableSpace
像是規劃不同槽的放置空間
* 使用 oracle export/import more faster than insert data directly,因為 insert 的方式轉換資料會耗很多時間。
提高搜尋資料的速度,類似於word內的索引,若沒有index,則是從第一筆的一筆一筆比對資料來確認是否符合條件,若有設的話則當符合index條件則會直接到已符合此index條件下的資料篩選
TableSpace
像是規劃不同槽的放置空間
* 使用 oracle export/import more faster than insert data directly,因為 insert 的方式轉換資料會耗很多時間。
[Design] 取資料方式
* 在撈取資料(SQL)欲新增一固定條件(a)時,可有以下幾種做法:
1. hard-code "a" 在 SQL 中。
2. 從資料庫中撈取 a 值。每次檔案更改都需重啟,所以如果僅在啟動時去load進來,那麼使用時會有錯,應該要有re-load機制或是使用前再去load。
- 放置在外部 property file
- 放置在 db table: 方便user修改
因為 a 算是個固定要加入的查詢條件,並不會變動,且不修改太多原本的程式,所以選擇使用 hard-code。
1. hard-code "a" 在 SQL 中。
2. 從資料庫中撈取 a 值。每次檔案更改都需重啟,所以如果僅在啟動時去load進來,那麼使用時會有錯,應該要有re-load機制或是使用前再去load。
- 放置在外部 property file
- 放置在 db table: 方便user修改
因為 a 算是個固定要加入的查詢條件,並不會變動,且不修改太多原本的程式,所以選擇使用 hard-code。
[SQL] String and int parameter syntax
int 直接表示
string: 單引號
ex:
select a.NAME from PERSON a where a.AGE = 1;
select a.AGE from PERSON a where a.NAME = 'YANG';
string: 單引號
ex:
select a.NAME from PERSON a where a.AGE = 1;
select a.AGE from PERSON a where a.NAME = 'YANG';
2011年8月13日 星期六
訂閱:
文章 (Atom)
