網頁

2018/8/30

Java 建立簡單的SLF4J + Log4j 2專案

在Eclipse中建立一個簡單的SLF4J搭配Apache Log4j 2專案的範例如下

Spring 使用@Autowired依賴注入物件

Spring的@Autowired用來依賴注入物件,典型的用法就是掛在類別成員變數上。@Autowired預設會依注入對象的類別型態來選擇容器中相符的物件來注入。

2018/8/29

Oracle 在Java呼叫 SELECT...FOR UPDATE的Stored Procedure時,發生java.sql.SQLException: ORA-01002: fetch out of sequence.( ORA-01002:fetch超出序列)錯誤

當在Java的Dao層使用Spring JdbcTemplate呼叫Oracle的預存程序(SP)時,發生java.sql.SQLException: ORA-01002: fetch out of sequence.( ORA-01002:fetch超出序列)錯誤

Java 8 Optional orElse() 與 orElseGet() 的差別

Java 8 新加入的Optional類別是設計來處理null的容器,而其orElse()orElseGet()的差別如下。

2018/8/28

Java 使用Binary Search 二元搜索法尋找陣列中的值

如果要從一個有排序的陣列中尋找一個特定的數,可以利用binary search來加快尋找的速度。

2018/8/27

Java 8 Method References(方法參考/方法引用)的使用時機

Java 8加入了lambda表示式(lambda expression)的語法特性,而lambda表示式可以進一步改用method references(方法參考/方法引用)的寫法。所以使用method references前你應該知道lambda語法該如何使用。

2018/8/26

Java final local變數是否能提升效能performace

Java 變數加上final會增加效能嗎? 答案是NO。

Java Maven的pom.xml是什麼?

在Maven專案中,一定可以看到一個pom.xml的檔案,通常在專案根目錄的位置。

Java Maven 什麼是Artifact?

Maven的artifact是指一個專案(project)建構(build)後產生的東西,中文可翻為"製品"或"構造物"或"構件"。

2018/8/25

Java instanceof 和 Class.isAssignableFrom(Class<?> cls)的區別

Java的instanceof關鍵字與Class類別的isAssignableFrom(Class<?> cls)方法都可用來判斷一個物件是否為某個類別或介面的子類別。但差異如下。

Java 8 用Optional來檢查null

寫Java一陣子都知道,最常出現的錯誤例外就是NullPointerException,而為了避免出現這個例外,所以程式中經常使用if else先判斷物件是否為null後,才會去呼叫物件的方法。

2018/8/24

Java 遞迴題目 階乘計算

Java遞迴基本題,使用遞迴計算階乘。

2018/8/20

Java 8 用Optional來代替if else敘述

今天同事問的一個問題,請將下面的if else敘述用Java 8的lambda改寫。

2018/8/17

Java Reflection(反射)簡單範例

Java Reflection簡單範例如下。

Oracle 如何在SQL Developer中測試輸出參數型態為SYS_REFCURSOR型態的Stored Procedure?

在SQL Developer中,可使用下面來測試輸出參數為SYS_REFCURSOR型態的Stored Procedure。

2018/8/15

Mockito Mock與Spy的差別

在Mockito中有Mock及Spy物件,分別可以用@Mock@Spy來注入,但兩者差異如下。

Mockito @Mock與@InjectMocks的差別

在單元測試(Unit Test)的物件生成套件Mockito中,@Mock@InjectMocks的區別如下。

2018/8/14

Oracle SELECT FOR UPDATE

如果有需要將SELECT的資料先lock後再對資料做後續邏輯處理時,會使用到SELECT FOR UPDATE來鎖定資料列。例如Stored Procedure中常會使用CURSOR來暫存SELECT的資料並做其他處理的情況。

Spring Framework環境配置檔的預設名稱

Spring Framework環境配置檔的預設名稱為WEB-INF下的applicationContext.xml

Spring Boot 使用@ImportResource匯入xml配置檔

在Spring Boot應用程式專案中,如果要匯入Spring的xml配置檔,可在Spring Boot的Application類別(即啟動Spring Boot的類別)搭配@ImportResource注釋來指定配置檔的位置來匯入。

2018/8/11

Oracle 資料庫物件名稱最大長度限制 schema name max length

Oracle 12c(12.1)資料庫物件(例:資料表,欄位)的名稱長度限制(schema name max length)是1 ~ 30 Bytes,也就是最長30個英文字。

2018/8/10

Java Bean Validation Constraints @Digits

本篇介紹Java Bean Validation Constraints 的 @Digits的用法。

2018/8/8

Java 計算整數的位數長度

Java 計算整數位數的方法如下。

2018/8/7

2018/8/6

Oracle PL/SQL 在Package建立一個簡單的查詢Stored Procedure

通常我們會在Java的Hibernate或MyBatis下SQL指令來查詢資料庫,但在某些情況會要求在資料庫寫Stored Procedure來查詢,而僅在Java中呼叫該Procedure來取得結果。

2018/8/5

如何將mp3上傳至iphone?

如果要將mp3上傳至iphone聽,傳統的方法就是用官方的itune來上傳,但這是最難用且令人抓狂的方法。如果你想將mp3放在iphone上聽,我認為最快速的方法就是把mp3放在Google Drive,然後在iphone上下載Google Drive的app來開啟就可以聽了。