如何使用Slick的源代码生成器设置用户名和密码?

乔治·普利哥洛普洛斯

按照此页面上的指示进行操作:http : //slick.typesafe.com/doc/2.0.0/code-generation.html
我们看到为生成mysql表的模型需要类似以下代码段的内容

val url = "jdbc:mysql://127.0.0.1/SOME_DB_SCHEMA?characterEncoding=UTF-8&useUnicode=true"

val slickDriver = "scala.slick.driver.MySQLDriver"

  val jdbcDriver = "com.mysql.jdbc.Driver"

  val outputFolder = "/some/path"

  val pkg = "com.pligor.server"

  scala.slick.model.codegen.SourceCodeGenerator.main(
    Array(slickDriver, jdbcDriver, url, outputFolder, pkg)
  )

这些参数对于H2数据库就足够了,因为链接中的示例具有该参数。

如何包含MySQL数据库的用户名和密码?

乔治·普利哥洛普洛斯

从互联网上找到的几个链接,以及基于cvogt的答案,这是您需要做的最少工作。

请注意,这是sbt的通用解决方案。如果您正在使用播放框架,则可能会发现使用相关插件更容易执行此任务

首先,您需要一个新的sbt项目,因为要运行平滑的源生成器,需要引用所有库依赖项。
使用本教程创建新的sbt项目:http ://scalatutorials.com/beginner/2013/07/18/getting-started-with-sbt/
最好使用giter8安装程序

如果碰巧可以与Intellij一起使用,那么您需要创建文件project/plugins.sbt并将其插入以下行:中addSbtPlugin("com.hanhuy.sbt" % "sbt-idea" % "1.6.0")在sbt中
执行gen-idea以生成一个intellij项目。

使用giter8,您将在项目文件夹中获得一个自动生成的文件ProjectNameBuild.scala。打开它并至少包括以下库依赖项:

libraryDependencies ++= List(
    "mysql" % "mysql-connector-java" % "5.1.27",
    "com.typesafe.slick" %% "slick" % "2.0.0",
    "org.slf4j" % "slf4j-nop" % "1.6.4",
    "org.scala-lang" % "scala-reflect" % scala_version
  )

其中scala版本是变量 private val scala_version = "2.10.3"

现在创建如下所示的自定义源代码生成器:

import scala.slick.model.codegen.SourceCodeGenerator

object CustomSourceCodeGenerator {

import scala.slick.driver.JdbcProfile

import scala.reflect.runtime.currentMirror

def execute(url: String,
          jdbcDriver: String,
          user: String,
          password: String,
          slickDriver: String,
          outputFolder: String,
          pkg: String) = {
val driver: JdbcProfile = currentMirror.reflectModule(
  currentMirror.staticModule(slickDriver)
).instance.asInstanceOf[JdbcProfile]

driver.simple.Database.forURL(
  url,
  driver = jdbcDriver,
  user = user,
  password = password
).withSession {
  implicit session =>
    new SourceCodeGenerator(driver.createModel).writeToFile(slickDriver, outputFolder, pkg)
    }
  }
}

最后,您需要execute在主项目对象中调用此方法。查找由giter8自动生成的文件ProjectName.scala。
在其中可以找到一个println呼叫,因为这仅仅是一个“ hello world”应用程序。上面的println调用是这样的:

CustomSourceCodeGenerator.execute(
url = "jdbc:mysql://127.0.0.1/SOME_DB_SCHEMA?characterEncoding=UTF-8&useUnicode=true",
slickDriver = "scala.slick.driver.MySQLDriver",
jdbcDriver = "com.mysql.jdbc.Driver",
outputFolder = "/some/path",
pkg = "com.pligor.server",
user = "root",
password = "xxxxxyourpasswordxxxxx"
)

这样,每次执行时,sbt run您将自动生成Slick所需的Table类

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Cookie通过Javascript设置用户名和密码

来自分类Dev

如何在Flask Peewee ORM中设置Postgres用户名和密码?

来自分类Dev

VBA代码传递用户名和密码

来自分类Dev

如何为网络服务类型提供商设置用户名和密码?

来自分类Dev

如何在web.config中设置密码和用户名

来自分类Dev

如何使用RESTEasy Client Builder设置用户名和密码?

来自分类Dev

使用Slick的代码生成器时,如何过滤出列?

来自分类Dev

如何使用用户名和密码设置系统范围的代理?

来自分类Dev

Firebase:如何从服务器上的用户名和密码生成访问令牌?

来自分类Dev

pg_dump:如何为* .sql输出文件设置用户名和密码?

来自分类Dev

设置用户名和密码VPN Powershell

来自分类Dev

如何在nodejs中设置ftp-srv的用户名和密码?

来自分类Dev

如何使用用户名和密码设置系统范围的代理?

来自分类Dev

如何使用$ _session []的用户名和密码进行搜索?

来自分类Dev

如何将用户名和密码或应用设置为锁定屏幕

来自分类Dev

如何使用Slick的源代码生成器设置用户名和密码?

来自分类Dev

如何使用RestClient发送用户名和密码

来自分类Dev

如何为RHEL Ec2实例设置用户名和密码访问

来自分类Dev

php设置用户名和密码

来自分类Dev

VBA代码传递用户名和密码

来自分类Dev

我想创建一个Twitter用户名生成器,用于检查是否将Twitter作为用户名使用了随机字符串

来自分类Dev

用户名和密码生成器

来自分类Dev

需要使用activemq java代码的用户名和密码指定队列名称

来自分类Dev

Jackrabitt:设置用户名和密码

来自分类Dev

在 Python 代码中安全地使用用户名和密码

来自分类Dev

如何使用数据库表设置管理员的用户名和密码?

来自分类Dev

如何使用用户名和密码连接LDAP?

来自分类Dev

在 RocketMQ 中使用集群时如何设置用户名和密码?

来自分类Dev

Google 导入离线转换设置用户名和密码

Related 相关文章

  1. 1

    使用Cookie通过Javascript设置用户名和密码

  2. 2

    如何在Flask Peewee ORM中设置Postgres用户名和密码?

  3. 3

    VBA代码传递用户名和密码

  4. 4

    如何为网络服务类型提供商设置用户名和密码?

  5. 5

    如何在web.config中设置密码和用户名

  6. 6

    如何使用RESTEasy Client Builder设置用户名和密码?

  7. 7

    使用Slick的代码生成器时,如何过滤出列?

  8. 8

    如何使用用户名和密码设置系统范围的代理?

  9. 9

    Firebase:如何从服务器上的用户名和密码生成访问令牌?

  10. 10

    pg_dump:如何为* .sql输出文件设置用户名和密码?

  11. 11

    设置用户名和密码VPN Powershell

  12. 12

    如何在nodejs中设置ftp-srv的用户名和密码?

  13. 13

    如何使用用户名和密码设置系统范围的代理?

  14. 14

    如何使用$ _session []的用户名和密码进行搜索?

  15. 15

    如何将用户名和密码或应用设置为锁定屏幕

  16. 16

    如何使用Slick的源代码生成器设置用户名和密码?

  17. 17

    如何使用RestClient发送用户名和密码

  18. 18

    如何为RHEL Ec2实例设置用户名和密码访问

  19. 19

    php设置用户名和密码

  20. 20

    VBA代码传递用户名和密码

  21. 21

    我想创建一个Twitter用户名生成器,用于检查是否将Twitter作为用户名使用了随机字符串

  22. 22

    用户名和密码生成器

  23. 23

    需要使用activemq java代码的用户名和密码指定队列名称

  24. 24

    Jackrabitt:设置用户名和密码

  25. 25

    在 Python 代码中安全地使用用户名和密码

  26. 26

    如何使用数据库表设置管理员的用户名和密码?

  27. 27

    如何使用用户名和密码连接LDAP?

  28. 28

    在 RocketMQ 中使用集群时如何设置用户名和密码?

  29. 29

    Google 导入离线转换设置用户名和密码

热门标签

归档