具有typesafe配置的Scala/Slick JDBC编码配置

Joh*_*n K 2 mysql scala jdbc utf-8 slick

我使用的建设斯卡拉应用油滑,我加载我MySQLDriverbackendval db = Database.forConfig("mysql.dev")哪里我"application.conf"文件的样子

mysql = {
dev = {
    dataSourceClass = "com.mysql.jdbc.jdbc2.optional.MysqlDataSource"
    properties = {
      databaseName = "test"  
      user = "user"
      password = "password"
      serverName = "localhost"
      portNumber="3306"
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我成功地将数据保存到我的数据库,该数据库使用默认的utf-8编码.但是当我试图保存字符泗时,我在数据库中以dreaded ?而不是输入字符结束.

我想我没有声明我的连接需要使用UTF-8,但我在文档中找不到该选项forConfig.

你知道我怎么解决这个问题吗?谢谢.

sud*_*d29 5

对于MySQL,useUnicode=true&characterEncoding=UTF-8在连接URL中添加参数应解决问题,即.

jdbc:mysql://<host>:<port>/<database>?useUnicode=true&characterEncoding=UTF-8
Run Code Online (Sandbox Code Playgroud)

您可以使用此链接配置URL.