Slick有没有一种方法可以在应用程序启动之前或在测试设置中(如Hibernate中)运行SQL代码?
参见示例https://github.com/geowarin/hibernate-examples/tree/master/standalone-data-jpa/src/main/resources
您可以在Play框架中使用Evolutions
。如果使用play-slick
,则可以添加play-slick-evolutions
依赖项,并确保play.evolutions.enabled
在application.conf
中未设置为false。
https://www.playframework.com/documentation/2.4.x/Evolutions
https://www.playframework.com/documentation/2.4.x/PlaySlick
[更新]
根据您的评论,您似乎希望SQL在启动时运行,而不是在迁移时运行。如果是这样,则可以使用JavaGlobal/ScalaGlobal进行播放<2.4.否则,您可以查看2.4 GlobalSettings文档。
我的问题有点重复。请参阅此处播放框架DML插入脚本。
使用play框架,您只需要在evolutions目录中创建一个名为2.sql的sql文件,其中包含所需的insert语句。
我仍在努力弄清楚你是否可以在不玩单机sbt应用程序的情况下做这样的事情。