mysql asyn 实战

创建configuration时,发现URLParser找不到,于是只能使用配置文件来,当然使用配置文件比使用URL初始化还要直观些

def configurationWithPassword = new Configuration(
host = "localhost",
port = 3306,
username = "root",
password = Some("123"),
database = Some("test")
)

Configuration文件本身是case class,它的code是

case class Configuration(username: String,
host: String = "localhost",
port: Int = 5432,
password: Option[String] = None,
database: Option[String] = None,
charset: Charset = Configuration.DefaultCharset,
maximumMessageSize: Int = 16777216,
allocator: AbstractByteBufAllocator = PooledByteBufAllocator.DEFAULT,
connectTimeout: Duration = 5.seconds,
testTimeout: Duration = 5.seconds
)

这让我想到了slick,slick我连配置文件都搞不出来。总觉得slick的设计有些反人类。

 

对于单连接

  def sinConnection: MySQLConnection = {
    val configuration: Configuration = configurationWithPassword
    new MySQLConnection(configuration)
  }

 

对于线程池连接

def poolConnection: ConnectionPool[MySQLConnection] = {
val configuration: Configuration = configurationPool
val factory = new MySQLConnectionFactory(configuration)
val pool = new ConnectionPool[MySQLConnection](factory, PoolConfiguration.Default)
pool
}

ResultSet并不是java.sql.resultSet而是作者自己创建的新类型

trait ResultSet extends IndexSeq[RowData]

而rowData则表示一行数据,也是一个顺序表

trait RowData extends IndexedSeq[Any]

这样,ResultSet就像是个二维表了

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值