我刚刚开始使用Scala并解除框架工作。我正在尝试使用普通JDBC连接我的数据库。我希望从default.props文件中读取我的数据库凭据。到目前为止我尝试了以下代码: 在我的default.props文件中:
db.class=com.mysql.jdbc.Driver
db.url=jdbc:mysql://localhost/scalatest
db.user=root
db.password=
在我的boot.scala文件中,我试图像这样进行JDBC连接:
val filename = "/src/main/resources/props/default.props"
Props.whereToLook = () => ((filename, () => Full(new FileInputStream(filename))) :: Nil)
val DBDriver = Props.get("db.class").toString
val DBURL = Props.get("db.url").toString
val DBUsrName = Props.get("db.user").toString
val DBPass = Props.get("db.password").toString
Class.forName(DBDriver)
val conn = DriverManager.getConnection(DBURL,DBUsrName, DBPass)
但是在使用container:start命令运行服务器时,会显示fileNotFoundException。任何人都可以告诉我在这里必须做什么。提前完成。
答案 0 :(得分:4)
删除您更改Props.whereToLook
的行。它应该已经设置为正确的值。 (more info on the Lift wiki)
注意:src/main/resources
文件夹的内容通常会在运行时直接添加到类路径中。因此,通过调用src/main/resources/props/default.props
可以使用someClassInYourProject.getResourceAsStream("/props/default.props")
文件。不要试图在运行时引用源目录中的文件,因为它只会在以后引起麻烦。