본문 바로가기
728x90
반응형

Spring Tutorial69

[스프링MVC -상품 관리 웹 개발 6] 상품 수정 컨트롤러 로직 추가 /** 상품 수정 폼 컨트롤러 */ @GetMapping("/{itemId}/edit") public String editForm(@PathVariable Long itemId, Model model) { Item item = itemRepository.findById(itemId); //수정에 필요한 정보 조회 model.addAttribute("item", item); return "basic/editForm"; //수정용 폼 뷰를 호출 } 뷰 템플릿(templates) /resources/templates/basic/editForm.html 상품 수정 폼 상품 ID 상품명 가격 수량 저장 취소 컨트롤러 로직 추가 /** 상품 수정 처리*/ @PostMapping("/{itemId.. 2023. 9. 1.
[스프링MVC -상품 관리 웹 개발 5] 상품 등록 처리 - @ModelAttribute [스프링MVC - 상품 관리 웹 페이지 만들기 4] 상품 등록 폼 (tistory.com) [스프링MVC - 상품 관리 웹 페이지 만들기 4] 상품 등록 폼 컨트롤러 로직 추가 /** 상품 등록 폼*/ @GetMapping("/add") public String addForm() { return "basic/addForm"; //단순히 뷰 템플릿만 호출 } 뷰 템플릿(templates) /resources/templates/basic/addForm.html 상품 등록 폼 상품 입력 joly156.tistory.com 이제 상품 등록 폼에서 전달된 데이터로 실제 상품을 등록 처리해보자. 요청 파라미터 형식을 처리해야 하므로 @RequestParam 을 사용 @PostMapping("/add") public.. 2023. 8. 31.
[스프링MVC -상품 관리 웹 개발 4] 상품 등록 폼 컨트롤러 로직 추가 /** 상품 등록 폼*/ @GetMapping("/add") public String addForm() { return "basic/addForm"; //뷰 템플릿 호출 (내부 호출) } 단순히 뷰 템플릿만 호출 뷰 템플릿(templates) /resources/templates/basic/addForm.html 상품 등록 폼 상품 입력 상품명 가격 수량 상품등록 취소 속성 변경 - th:action HTML form에서 action에 값이 없으면? 현재 URL에 데이터를 전송한다. 상품 등록 폼의 URL과 실제 상품 등록을 처리하는 URL을 똑같이 맞추고 HTTP 메서드로 두 기능을 구분 (이렇게 하면 하나의 URL로 등록 폼과, 등록 처리를 깔끔하게 처리할 수 있다.) 상품 등록 .. 2023. 8. 31.
[스프링MVC -상품 관리 웹 개발 3] 상품 상세 컨트롤러 로직 추가 /** 상품 상세(조회) */ @GetMapping("/{itemId}") public String item(@PathVariable Long itemId, Model model) { Item item = itemRepository.findById(itemId); //PathVariable 로 넘어온 상품ID로 item 조회하고 model.addAttribute("item", item); //모델에 담아둔다 return "basic/item"; //뷰 템플릿 호출 } 뷰 템플릿(templates) /resources/templates/basic/item.html 상품 상세 상품 ID 상품명 가격 수량 상품 수정 목록으로 속성 변경 - th:value th:value="${item.id.. 2023. 8. 30.
[스프링MVC -상품 관리 웹 개발 2] 상품 목록 - 타임리프 컨트롤러 로직 @Controller @RequestMapping("/basic/items") @RequiredArgsConstructor//final이 붙은 멤버변수만 사용한 생성자 자동 생성 public class BasicItemController { private final ItemRepository itemRepository; /** 상품 목록 */ @GetMapping public String items(Model model) { List items = itemRepository.findAll();//모든 상품 조회 model.addAttribute("items", items);//items(모든 상품)을 모델에 담는다 return "basic/items";//뷰 템플릿 호출 } /** * 테스.. 2023. 8. 29.
[스프링MVC -상품 관리 웹 개발 1] 상품 도메인 개발 요구사항 상품 도메인 모델 상품 ID, 상품명, 가격, 수량 상품 관리 기능 상품 목록, 상품 상세, 상품 등록, 상품 수정 핵심 비즈니스 로직 (상품 도메인) 을 개발해보자. 상품 객체 //@Data @Getter @Setter public class Item { private Long id; private String itemName; private Integer price; private Integer quantity; //null일 경우 포함하기 위해 Integer public Item() { } public Item(String itemName, Integer price, Integer quantity) { this.itemName = itemName; this.price = price; thi.. 2023. 8. 28.
728x90
반응형