1
현재 내가 좋아하는 컨트롤러의 내부에 내 UserService를 wireup하는 guice을 사용하고 있습니다 :게임 내 케이크 패턴을 사용하여 UserService를 설정하는 방법은 무엇입니까?
abstract class UserService {
def get(userId: Int): User
}
class UserServiceImpl @Inject()(val userDao: UserDao) extends UserService {
def get(userId: Int): User = {
// ....
}
}
내가 종속성으로 guice을 삭제하고 케이크를 사용하고자하는 경우 :
@Singleton
class UserController @Inject()(userService: UserService) extends Controller {
def show(userId: Int) {
val user = userService.get(userId)
Ok("hello " + user.name)
}
}
내 UserService는 같다 패턴, 코드의 모양은 무엇이며 어떻게 이것을 Play에 통합하여 컨트롤러에서이 서비스를 사용할 수 있습니까?
이 구문/개념의 이름은 무엇입니까?'''this : UserService =>''' – Blankman
이것이 맞는지 확실하지 않습니다. UserService 특성과 UserServiceImpl 특성 사이에 링크가 없습니다. 맞습니까? – Blankman
이 구문의 이름은 '자체 형식'입니다. 당신 말이 맞아, Impl은 물론 인터페이스를 확장해야한다 (나는 나의 대답을 편집했다). – DCKing