首页 > 解决方案 > 在scala中使用依赖注入实例化一个类

问题描述

我有一个下面的类 UserModel 和一个伴随对象,

package models

import javax.inject.Inject
import play.api.db.Database
import scala.concurrent.Future

class UserModel @Inject()(db : Database) {
      def save( user: UserData): Unit = {        
        val conn    = db.getConnection()
        val isadmin = if (user.isadmin)  1 else 0

        try {
        val stmt = conn.createStatement
        val rs   = stmt.executeUpdate("""INSERT INTO USER(fullname,email,password,isadmin)
        VALUES ('""" +user.fullname+ """','"""+user.email+ """',
        '"""+user.password+ """','"""+isadmin+ """')""")

        } finally {
        conn.close()
        }
    }
}
object UserModel {
   def save( user: UserData): Unit = {
    // var obj = new UserModel 
    UserModel.save(user)
   }
}

我如何实例化这个类?

var obj = new UserModel 给出错误,

not enough arguments for constructor UserModel: (db: play.api.db.Database): models.UserModel. Unspecified value parameter db

标签: scala

解决方案


推荐阅读