프로그래밍/spring

[spring]코드 분석 && Encoding

카와우소 2020. 6. 17. 01:33
●소스 코드 분석

분석을 위해서 화면을 띄우게만 수정했습니다.

 

1.@Controller는 이 클래스가 컨트롤러라는 것을 스프링에 알려주는 용도입니다.

 

  @Controller가 붙어있는 클래스 안에 있어야만 정상적으로 동작합니다. 

 

  10번째 줄의 @Controller를 주석 처리 한 후 http://localhost:8080/......로 접속해보면 404에러가 나오는 것을 확인     

  할 수 있습니다.

 

  15번째 줄은 뷰로 값을 전달하는 코드이고, "serverTime"은 key이고, "테스트"는 value입니다.

 

  실제로 jsp파일을 확인해보면

 

  이 중 12번째 줄의 ${serverTime}의 key값에 value를 표시하는 겁니다.

 

2.@RequestMapping은 파라미터와 같은 요청이 왔을 경우 아래 메소드를 수행시키는 용도입니다.

  쉽게 말해서 요청이 들어왔을 때 어떤 메소드를 실행시킬지를 매핑해주는 역할이라고 생각하면 됩니다.

 

 

●Encoding

로컬에서 페이지를 띄웠을 때 글자가 깨지는 현상이 발생하지만 이것은 인코딩 필터만 넣어주면 쉽게 해결됩니다.

 

1. web.xml에 필터를 추가

2. jsp도 추가수정

위의 이 부분에

이렇게 추가해주세요.

 

그런다음 다시 로컬을 돌려보면

 

이렇게 한글이 표시되는 것을 확인할 수 있습니다.

※jsp에도 필터를 추가해줘야 하는 이유는 web.xml에 추가한 인코딩에 대한 부분은 컨트롤러에서 뷰로 넘겨줄 때만 적용되기 때문에 뷰에 대한 인코딩 설정은 jsp파일에 별도로 해줘야 합니다.