Source
Example Usage
ResourceTest.scala
object ResourceTest {
import java.sql.{Connection,ResultSet}
val OraPool = ConnPool("orahost152:1521",3, Db ) // some how get oracle jdbc connection
def main ( args : Array[String] ): Unit = {
Resource.use (OraPool.getConnection){ conn =>
val ts = find(conn)
for ( v <- ts ) println(v)
}
}
case class Tab(tname: String, tabtype: String)
def find(conn: Connection): List[Tab] = {
Resource.use(conn.createStatement){st =>
Resource.use (st.executeQuery("select tname,tabtype from tab")){ rs =>
import scala.collection.mutable.ListBuffer
var list = List[Tab]()
while(rs.next()){
list ::= Tab(rs.getString("tname"), rs.getString("tabtype"))
}
list
}
}
}
}