Controller - doooyeon/helloSpringMVC GitHub Wiki

HomeController

  • Home으로 부터 오는 request를 처리하는 controller
  • @RequestMapping("/")
  • home.jsp를 보여줌

CourseController

  • 학사관리에 대해 클라이언트 request를 처리하는 controller
  • 클라이언트의 request를 RequestMapping
  • CourseService를 통해 BusinessLogic 수행
  • Model에 결과값을 저장
  • Viewname을 리턴

  • @RequestMapping("/showcreditbysemester")

  • 데이터베이스의 year, semester 필드 리스트를 얻어옴

  • 데이터베이스에서 year, semester에 해당하는 학점의 합을 얻어와 리스트에 저장

  • 학기별 이수 학점 정보가 담긴 리스트 creditBySemesterList를 courses라는 key로 Model에 저장

  • creditbysemester.jsp를 보여줌

  • @RequestMapping("/showcoursebysemester")

  • 데이터베이스에서 request parameter 값으로 넘어온 year, semster에 이수한 과목 리스트를 얻어옴

  • 학기별 이수 과목 정보가 담긴 리스트 courseBySemesterList를 courses라는 key로 Model에 저장

  • coursebysemester.jsp를 보여줌

  • @RequestMapping("/showcreditbydivision")

  • 데이터베이스의 division 필드 리스트를 얻어옴

  • 데이터베이스에서 division 해당하는 학점의 합을 얻어와 리스트에 저장

  • 구분별 이수 학점 정보가 담긴 리스트 creditByDivisionList를 courses라는 key로 Model에 저장

  • creditbydivision.jsp를 보여줌

  • @RequestMapping("/registerforcourses")

  • 빈 Course객체를 생성하여 Model 저장

  • registerforcourses.jsp를 보여줌

  • @RequestMapping("/doregister")

  • 사용자가 입력한 Form data에 Error가 있을 때

  • 사용자가 입력한 값과 BindingResult를 Model에 저장 * data buffering을 통해 view에 넘겨줌 * registerforcourses.jsp를 보여줌

  • 사용자가 입력한 Form data에 Error가 없을 때

  • 사용자가 입력한 값이 binding된 Course객체를 DB에 삽입 * registersuccess.jsp를 보여줌

  • @RequestMapping("/showregisteredcourses")

  • 데이터베이스에서 2017년 1학기 수강 과목을 얻어와 리스트에 저장

  • 수강신청된 2017년 1학기 과목 정보가 담긴 리스트 registeredCoursesrList를 courses라는 key로 Model에 저장

  • registeredcourse.jsp를 보여줌


CourseService

  • Controller에서 부터 DAO를 접근하기 위한 클래스

CourseDAO

  • 데이터베이스를 접근하기 위한 클래스
  • JdbcTemplate를 이용해 sql문의 결과를 얻어옴

CourseMapper

  • sql문 결과의 레코드를 Course객체로 매핑하는 클래스