[Java]MariaDB JDBC Connection Support milliseconds

MySQL在5.1版時曾支援timestamp有milliseconds (毫秒),不過之後的版本又把它移除支援了,而在5.6.4版後又在支援了。當然在不支援milliseconds (毫秒)時還是可以把欄位開成Long來存放時間格式。

MariaDB 10版本身已經支援timestamp的milliseconds (毫秒),只需再配合MariaDB提供的Type 4 JDBC Driver,另在Connection Url裡加上參數useFractionalSeconds=true。

Read More

[jQuery]簡單的向上Marquee跑馬燈公告效果

Html本身有一個Tag Marquee可以使用Marquee跑馬燈功能,不過功能十分有限,像是滑鼠移入停止,每一筆內容暫停後再執行下一筆等,原本的Marquee跑馬燈都不支援。

MarqueeExample

這個範例是利用jQuery的animate來移動scroll,達到移動的感覺,所以再初始化時需要先close一份資料append上去,如此在移動到最後一筆時,才不會因為scrollBar到底而無法移動。而Mouse移入時則stop animate及clear移除的Timeout,待Mouse out後,再執行,不過這部份控制的沒有很好,有興趣的人可以再加以修改。

Read More

c3p0 ConnectionPools設置與使用

c3p0是一個基於JNDI-bindable DataSources(使用DriverManager-based)的很容易使用的JDBC驅動函數庫。

所以在使用c3p0時,還需要一個JDBC的Driver,才能使用,而c3p0的作用只是控制Database的Connection使用,舉個簡單的例子,當Connection被DataBase Server timeout斷線後,c3p0會自動多次去重新連線,避免程式就直接丟出SQLException。

這次剛好遇到Microsoft SQL Server 2005不知為何一直丟出以下訊息,才去找到c3p0來使用的,發生的原因似乎是SQL Server本身對JDBC的Connection TimeOut斷線、或是Connection數不夠。

I/O Error: Connection reset
I/O Error: Software caused connection abort: recv failed

下面是一個範例,結果如下圖:

c3p0.png

Read More