티스토리 뷰

이제 MVC에서 모델(Model)에 해당하는 구분을 구현해 봅시다. 모델은 컨트롤러에서 뷰로 전달해주는 정보입니다. 스프링MVC에서 모델을 생성하는 것은 DispaterServlet의 역할이죠.

DispaterServlet이 생성한 모델에 대한 참조 변수는 @RequestMapping 어노테이션이 붙은 메서드에서 인자를 선언하기만 하면 자동으로 받을

수 있습니다. 그럼 들어가볼까요?

 

BoardController. list(Model model)

 

코드에서 model에 addAttribute( )메서드를 이용해 boardService.list( ) 메서드의 반환 값을 model에 추가하고 있습니다. 그리고 마지막으로 /board/list라는 문자열 값을 반환하고 있는데 이것이 바로 MVC모델의 마지막 요소인 뷰에 대한 힌트입니다. 이 힌트를 이용해 스프링 MVC DispatcerServlet은 사용자에게 보여줄 뷰를 선정하죠.

 

servlet-context.xml

 

이 힌트를 통해 src/main/webapp/WEB-INF/views/board/list.jsp 라고 자동 해석됩니다. 왜요?

 

위에 servlet-context.xml을 자세히 들여다보세요. prefix(접두사), suffix(접미사) 딱 느낌이 옵니다.

빈즈 프로퍼티 설정으로 내부 리소스 뷰에서 자동적으로 경로와 파일을 설정하게 됩니다.

(이는 타일즈에도 적용이 가능합니다!~)

 

list.jsp

 

table 태그를 통해 table을 만드는 list.jsp입니다.

여기서 <c:forEach ... /> 가 보이는데

 

자세한 건 두 블로그를 참고하시면 될것같습니다!

 

https://mkil.tistory.com/249

 

[JSTL 정리] JSTL이란? / 사용방법 / 태그라이브러리

1. JSTL이란? - JSP 표준 태그 라이브러리(여러 프로그램이 공통으로 사용하는 코드를 모아놓은 코드의 집합)의 약어 - 자신만의 태그를 추가할 수 있는 기능을 제공한다. - 주로 JSTL의 Core에서 c를

mkil.tistory.com

 

https://offbyone.tistory.com/368

 

JSTL - , 태그 사용법

는 List, 배열 요소를 순서대로 반복해서 처리할 수 있는 태그 입니다. 1. 이름 목록을 가진 ArrayList를 출력하는 예제 입니다. // 리스트를 만들어서 모델에 넣습니다. List nameList = new ArrayList (Arrays.a.

offbyone.tistory.com

 

결과는?

 

Result

와우! 테이블이 만들어진 것을 확인할 수 있습니닷!

 

커밋 : https://bitbucket.org/0307kjb/spring_project/commits/a5af2a8f3f3dd32efb3277cc102bf5b69d0304d0

 

0307kjb / spring_project / commit / a5af2a8f3f3d — Bitbucket

 

bitbucket.org

 

 

 

 

그다음은 각 글을 하나만 읽는 구현을 하도록 하겠습니다.

BoardController. read(Model, @PathVariable )

 

+ @PathVariable 설명

 

https://sarc.io/index.php/development/1145-pathvariable

 

오늘은 @pathvariable 어노테이션!

[{"id":"13","listid":"1","parentid":"0","videosource":"youtube","videoid":"KiwjxNKXfxY","imageurl":"https:\/\/i.ytimg.com\/vi\/KiwjxNKXfxY\/default.jpg,120,90;https:\/\/i.ytimg.com\/vi\/KiwjxNKXfxY\/mqdefault.jpg,320,180;https:\/\/i.ytimg.com\/vi\/KiwjxNKX

sarc.io

 

read.jsp

여기서 제목 t1을 클릭하면?

 

/board/read/{내가 클릭한 seq 넘버}로 이동합니다.

결과는?

 

Result

 

커밋)

 

https://bitbucket.org/0307kjb/spring_project/commits/1e7deafbf6d98adc1fc912e81742ef4f3b8080bc

 

0307kjb / spring_project / commit / 1e7deafbf6d9 — Bitbucket

 

bitbucket.org

 

 

다음에는 수정과 글쓰기를 구현하겠습니다!

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함