今天是2017年最後一天的工作日,回顧一下今年及展望明年,寫些瑣事。
2017/12/27
2017/12/26
2017/12/25
2017/12/24
Katalon Automation Recorder Chrome extension簡介
最近要導入自動化測試,所以開始研究一下Selenium,正要安裝的時候才發現Chrome沒有,新版的Firefox也沒有,然後看到了Katalon Automation Recorder這個工具。
2017/12/20
Mybatis 共用resultMap
Mybatis如果有許多的Mapper用到相同的resultMap
,例如使用者資料之類的model,則可以把這個被共用的resultMap
獨立出來成為一個Mapper,然後將使用到這個resultMap
的Mapper的<select >
的resultMap
的值指向其id
即可。
2017/12/18
2017/12/17
Java 為什麼在Service層要使用Interface
在Java Web應用程式中,SpringMVC的@Controller
,@Service
及@Repository
的分層架構是經常被使用的架構。在實作Service層時,通常會先定義Service的介面,然後才撰寫具體類別實作該介面。我曾經認為為什麼要這麼麻煩呢? Service直接寫成類別不就好了,寫一個介面然後再來繼承不是多此一舉很麻煩嗎? 後來查了一下才知道這樣做的原因其實就是符合SOLID原則的設計,不直接依賴類別的好處如下。
2017/12/14
2017/12/12
2017/12/11
如何停止MySQL在Windows 7的自動更新
為什麼要停止MySQL的自動更新呢? 因為我懷疑是自動更新導致原本能啟動的MySQL服務變成無法啟動,因為某些資料夾或設定在自動更新後被覆寫掉了,真的很煩。
2017/12/8
Spring MVC 從Controller的方法重新導向至頁面
如果要從SpringMVC的Controller的方法重新導向到jsp或html頁面,可以回傳prefix為redirect:
的字串。
2017/12/7
記帳簿 從Github clone Maven Web專案並匯入至Eclipse專案
首先取得Github專案的位置,例如https://github.com/matthung0807/moneynote.git
。
2017/12/6
JBoss Unable to get managed connection for [JNDI_NAME]
如果你的應用程式在透過JBoss JNDI設定連不上資料庫並出現
javax.resource.ResourceException
Unable to get managed connection for [JNDI_NAME]
那很有可能你的jdbc driver有問題,請檢查JBoss的library目錄(例如[JBOSS_HOME]/server/default/lib
)中的jdbc driver版本是否正確,或是放了多個jdbc都可能導致此錯誤。
MyBatis 返回整數 resultType
在MyBatis查詢如果要返回整數,則resultType
屬性要設為java.lang.Integer
。
<select id="select" resultType="java.lang.Integer">
SELECT COUNT(*)
FROM USER_PROFILE
</select>
呼叫的Interface的方法如下。
public Integer select();
2017/12/5
在URL參數中傳遞日期Date至Spring MVC Controller的@ModelAttribute參數
從前端頁面要透過url參數傳遞日期至Spring MVC的@ModelAttribute
參數,而該Model物件的屬性為java.util.Date
,則日期成員變數前可加上@DateTimeFormat
並根據前端傳來的格式設定pattern
屬性,
MyBatis java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String 錯誤
今天在用MyBatis查詢根據輸入Date的條件查詢時,發生下面錯誤。