scala libraryDependencies += "com.typesafe.play" %% "play-server" % "2.8.8" scala GET /api/users controllers.UserController.getAllUsers POST /api/users controllers.UserController.createUser GET /api/users/:id controllers.UserController.getUserById(id: Long) PUT /api/users/:id controllers.UserController.updateUser(id: Long) DELETE /api/users/:id controllers.UserController.deleteUser(id: Long) scala package controllers import play.api.mvc.{AbstractController, ControllerComponents} class UserController(cc: ControllerComponents) extends AbstractController(cc) { def getAllUsers = Action { Ok("Get all users") } def createUser = Action { Ok("Create a user") } def getUserById(id: Long) = Action { Ok(s"Get user by ID: $id") } def updateUser(id: Long) = Action { Ok(s"Update user with ID: $id") } def deleteUser(id: Long) = Action { Ok(s"Delete user with ID: $id") } } scala package playserverexample import controllers.UserController import play.api.routing.Router import play.api.{Application, ApplicationLoader, BuiltInComponentsFromContext, BuiltInComponents} class MyApplicationLoader extends ApplicationLoader { def load(context: ApplicationLoader.Context): Application = { new MyComponents(context).application } } class MyComponents(context: ApplicationLoader.Context) extends BuiltInComponentsFromContext(context) { val userController = new UserController(controllerComponents) lazy val router: Router = Router.from { case GET(p"/api/users") => userController.getAllUsers case POST(p"/api/users") => userController.createUser case GET(p"/api/users/$id") => userController.getUserById(id.toLong) case PUT(p"/api/users/$id") => userController.updateUser(id.toLong) case DELETE(p"/api/users/$id") => userController.deleteUser(id.toLong) } override def router: Router = this.router }


上一篇:
下一篇:
切换中文