ましめも

技術系メモ

はじめてのscala-redis

import com.redis.RedisClientPool
import com.redis.serialization.Parse.Implicits._
import com.redis.serialization._

object RedisTest extends App{
  val clients = new RedisClientPool("localhost", 6379)

  clients.withClient(client => {
    client.set("fuga", "hoge")
    val result1 = client.get[String]("fuga")
    println(result1) //Some(hoge)

    client.set("fuga", 3L)
    val result2 = client.get[Long]("fuga")
    println(result2.get) //3

    client.del("log")
    client.lpush("log", "a", "b", "c")
    val result3 = client.lrange[String]("log", 0, 100)
    println(result3.get) //List(Some(c), Some(b), Some(a))


  })
}

なんでresult3、List[Option[String]]なんだろ。List[String]でよさそうな気がするのに…うーん。
即flatMapしたくなる。