Spring

Dodo Lee·2024년 11월 1일

[ Spring ]

※ Spring MVC 요청 처리 과정 ※

1) DispatcherServlet
   : 클라이언트의 요청(Request)을 전달 받고, 요청에 맞는 컨트롤러가 리턴 한 결과 값을
     View에 전달하여 알맞은 응답(Response)을 생성
2) HandlerMapping
   : 클라이언트의 요청 URL을 어떤 컨트롤러가 처리할지 결정
3) Controller
   : 클라이언트의 요청을 처리한 뒤, 결과를 DispatcherServlet에게 리턴
4) ModelAndView
   : 컨트롤러가 처리한 결과 정보 및 뷰 선택에 필요한 정보를 담음
5) ViewResolver
   : 컨트롤러의 처리 결과를 생성할 View를 결정
6) View
   : 컨트롤러의 처리 결과 화면을 생성, JSP나 Velocity 템플릿 파일 등을 View로 사용

[ Spring을 이용한 Todo List 문제 해결 과정]


문제1) update.html에서, h1태그 안에 thymeleaf를 이용하여 todoTitle 수정을 입력하고자 하였으나,
      error가 발생
      입력 코드 : th:text="${todo.todoTitle} 수정"

해결1) 글씨를 같이 쓰기 위해서, ||를 입력해야 됨
      해결 코드 : th:text="|${todo.todoTitle} 수정|"
문제2) update.html에서, 할 일 번호에 value를 작성하지 않아,
      빈 문자열이 전달 되어 오류 발생
      입력 코드 : input type="hidden" name="todoNo"

해결2) value 값을 작성하여, 원하는 값을 넘겨 해결
      해결 코드 : input type="hidden" name="todoNo" th:value="${todo.todoNo}
문제3) todo-mapper.xml에서 update 요청 시, 나열 할 때 ','을 사용하지 않아 오류 발생
	  입력 코드 : UPDATE TB_TODO SET
  				TODO_TITLE = #{todoTitle}
  				TODO_CONTENT = #{todoContent}
  				WHERE TODO_NO = ${todoNo}

해결3) ','를 이용해 구분 해 줌으로 오류 해결
	  해결 코드 : UPDATE TB_TODO SET
  				TODO_TITLE = #{todoTitle},
  				TODO_CONTENT = #{todoContent}
  				WHERE TODO_NO = ${todoNo}
profile
연습생

0개의 댓글