Free Lines Arrow
본문 바로가기
728x90

분류 전체보기379

[Spring] PRG(Post Redirect Get) PRG Post Redirect Get 이라고 하는데 실무에서 많이 쓰인다. 왜 써야 되는지 먼저 알아보자. 상품등록의 심각한 문제점 다음과 같이 Controller를 구현할 경우 문제가 있다. 기능은 다음과 같다. post 방식으로 요청이 왔을때 - ModelAttribute 를 이용하여 item 을 저장한다. retun 값은 string 인데 해당 뷰를 호출한다. 심각한 문제가있다. @PostMapping("/add") public String addItemV3(@ModelAttribute Item item) { itemRepository.save(item); return "basic/item"; } 어떤 문제점이 발생하는가? 상품Controller 에서 저장후 View 를 넘겨준다. 하지만 URL .. 2021. 12. 3.
[Spring] 웹페이지 만들어 보기 웹페이지 만들어 보기 배운내용으로 실제 웹페이지를 만들어 본다. 들어가기전 타임리프 핵심을 공부하고 가보자 핵심1 th:xxx 가 붙은 부분은 서버사이드에선 렌더링이 된다; - 즉 원래 정의되어있는 값을 대체 한다. @{...} url 링크표현식이라고 한다. th:href="@{/css/bootstrap,min.css}" URL 링크 표현식을 사용하면 서블릿 컨텍스트를 자동으로 포함한다. 경로변수에 값을 넣을수 있고 쿼리 파라미터도 지원한다. - th:href="@{/basic/items/{itemId}(itemId=${item.id}, query='test')}" - http://localhost:8080/basic/items/1?query=test th:onclick onclock="location... 2021. 12. 2.
[Design Pattern] Abstract Factory Pattern Abstract Factory Pattern 추상팩토리 패턴은 연관된 객체들의 집합을 형성할때 이용하는 디자인 패턴이다. 하나의 클래스를 만들고 객체를 만드는 방식에 따라 기능을 독립적으로 구현하기 위해 사용하는 패턴이다. 구조보다 코드를 보면서 이해하는게 빠르다. Abstract Factory Pattern 구조 추상팩토리의 구조이다. 1. 아이템 A, B, C 의Interface 있다. - 실제 구현체는 Factory 를 통해 구현이 된다. 2. Factory 역시 Interface 가 있다. - 상황에 맞는 Factory 를 만들어 다른 객체를 만들어 낸다. Abstract Factory Pattern 예제 기본적으로 CarFactory 있다. - CarFactory 를 이용해 다른 자동차 공장을 .. 2021. 11. 29.
[Spring] @ModelAttribute 사용하기 @ModelAttribute 사용하여 View 와 Controller 에 어떻게 적용하는지 알아보자 ModelAttribute 는 Model 을 지원하는 애노테이션이다. Controller 와 View 가 어떻게 Item 객체를 주고받는지 살펴본다. Item 객체 package hello.itemservice.domain.item; import lombok.Data; @Data public class Item { private Long Id; private String itemName; private Integer price; private Integer quantity; public Item() { } public Item(String itemName, Integer price, Integer quan.. 2021. 11. 27.
728x90
반응형