package Ġcom . cap y bal a Ċ Ċ import Ġcom . cap y bal a . d but ils . test Db Utils Ċ import Ġcom . cap y bal a . j db ct emplate . test Jdbc Template Ċ import Ġcom . cap y bal a . j db i . test J DB I Ċ import Ġcom . cap y bal a . mybatis . test My Batis Ċ import Ġcom . cap y bal a . sql 2 o . test Sql 2 o Ċ import Ġorg . j db i . v 3 . core . J db i ĊĊ Ċ fun Ġmain ( args : ĠArray < String >) Ġ{ ĊĠĠĠ Ġval Ġjdbc Url Ġ= Ġ" jdbc : postgresql :// localhost : 5 4 3 2 / postgres ? user = postgres & password =" ĊĊĠĠĠ Ġval Ġtests Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTest (" Common s ĠDb Utils ", Ġ:: test Db Utils ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTest (" Spring ĠJDBC ĠTemplate ", Ġ:: test Jdbc Template ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTest (" My Batis ", Ġ:: test My Batis ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTest (" J DB I ", Ġ:: test J DB I ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTest (" Sql 2 o ", Ġ:: test Sql 2 o ) ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġsetup ( jdbc Url ) ĊĠĠĠ Ġtests . forEach Ġ{ Ġ( name , Ġtest Func ) Ġ-> ĊĠĠĠĠĠĠĠ Ġprintln (" ================ ============== Ġ$ name Ġ================= ============ =") ĊĠĠĠĠĠĠĠ Ġval Ġstart Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠĠĠĠĠ Ġtest Func ( jdbc Url ) ĊĠĠĠĠĠĠĠ Ġval Ġend Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠĠĠĠĠ Ġprintln ("${ end Ġ- Ġstart } ms ") ĊĠĠĠ Ġ} Ċ } Ċ Ċ data Ġclass ĠTest ( ĊĠĠĠĠĠĠĠ Ġval Ġname : ĠString , ĊĠĠĠĠĠĠĠ Ġval Ġtest Func : Ġ( String ) Ġ-> ĠUnit Ċ ) Ċ Ċ fun Ġsetup ( jdbc Url : ĠString ) Ġ{ ĊĠĠĠ Ġval Ġj db i Ġ= ĠJ db i . create ( jdbc Url ). install Plugins () ĊĊĠĠĠ Ġj db i . use Transaction < Exception > Ġ{ Ġhandle Ġ-> ĊĠĠĠĠĠĠĠ Ġhandle . create Script (""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdrop Ġtable Ġif Ġexists Ġsql _ mapper _ test ; ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcreate Ġtable Ġsql _ mapper _ test Ġ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ-- Ġsimple ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ boolean Ġboolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ integer Ġinteger , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ decimal Ġdecimal , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ double Ġdouble Ġprecision , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ varchar Ġvarchar ( 1 0 0 ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ text Ġtext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ byte a Ġbyte a , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ uuid Ġuuid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ-- Ġdatetime ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ date Ġdate , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ time Ġtime , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ time tz Ġtime tz , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ timestamp Ġtimestamp , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ timestamp tz Ġtimestamp tz , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ-- Ġcomplex ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ inet _ ipv 4 Ġinet , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ inet _ ipv 6 Ġinet , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ url Ġtext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ integer _ array Ġinteger [], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ varchar _ array Ġvarchar ( 1 0 ) [] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinsert Ġinto Ġsql _ mapper _ test Ġ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ-- Ġsimple ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ boolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ integer , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ decimal , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ double , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ varchar , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ text , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ byte a , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ uuid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ-- Ġdatetime ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ date , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ time , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ time tz , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ timestamp , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ timestamp tz , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ-- Ġcomplex ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ inet _ ipv 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ inet _ ipv 6 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ url , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ integer _ array , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc _ varchar _ array ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġvalues Ġ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ-- Ġsimple ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' 0 . 5 ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 . 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' varchar ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' long Ġlong Ġtext ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠE ' \\ x DEAD B EE F ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' 3 3 ee 7 5 7 a - 1 9 b 3 - 4 5 dc - be 7 9 - f 1 d 6 5 ac 5 d 1 a 4 ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ-- Ġdatetime ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' 2 0 1 9 - 0 9 - 2 7 ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' 1 3 : 2 3 ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' 1 3 : 2 3 + 0 9 : 0 0 ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' 2 0 1 9 - 0 9 - 2 7 T 1 3 : 2 3 ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' 2 0 1 9 - 0 9 - 2 7 T 1 3 : 2 3 + 0 9 : 0 0 ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ-- Ġcomplex ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinet Ġ' 1 9 2 . 1 6 8 . 1 . 1 ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinet Ġ':: 1 ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' https :// example . com ', ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġarray [ 1 , Ġ 2 , Ġ 3 ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġarray [' A ', Ġ' B ', Ġ' C '] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent ()). execute () ĊĠĠĠ Ġ} Ċ } Ċ