@startuml package com.iluwatar.page.controller { class App { - LOGGER : Logger {static} + App() + main(args : String[]) {static} } class SignupController { - LOGGER : Logger {static} ~ view : SignupView ~ SignupController() + create(form : SignupModel, redirectAttributes : RedirectAttributes) : String + getSignup() : String } class SignupModel { - email : String - name : String - password : String + SignupModel() + SignupModel(name : String, email : String, password : String) + getEmail() : String + getName() : String + getPassword() : String + setEmail(email : String) + setName(name : String) + setPassword(password : String) } class SignupView { - LOGGER : Logger {static} + SignupView() + display() : String + redirect(form : SignupModel) : String } class UserController { - LOGGER : Logger {static} ~ view : UserView + UserController() + getUserPath(form : SignupModel, model : Model) : String } class UserModel { - email : String - name : String + UserModel() + getEmail() : String + getName() : String + setEmail(email : String) + setName(name : String) } class UserView { - LOGGER : Logger {static} + UserView() + display(user : SignupModel) : String } } UserController --> "-view" UserView UserController --> "-model" UserModel SignupController --> "-view" SignupView SignupController --> "-model" SignupModel @enduml