Лучшие практики сопоставления строковых шаблонов

Ниже приведен код, который не работает, но описывает то, что я хочу сделать.

Не могли бы вы порекомендовать лучший подход к этой проблеме?

def resolveDriver(url: String) = {
  url match {
    case url.startsWith("jdbc:mysql:") => "com.mysql.jdbc.Driver"
    case url.startsWith("jdbc:postgresql:") => "org.postgresql.Driver"
    case url.startsWith("jdbc:h2:") => "org.h2.Driver"
    case url.startsWith("jdbc:hsqldb:") => "org.hsqldb.jdbcDriver"
    case _ => throw new IllegalArgumentException
  }
}
27
задан Xavier Guihot 6 April 2019 в 19:38
поделиться