본문 바로가기
728x90
반응형

분류 전체보기111

[스프링MVC -상품 관리 웹 개발 7] PRG - Post/Redirect/Get [스프링MVC 상품 관리 웹 페이지 5] 상품 등록 처리 - @ModelAttribute (tistory.com) [스프링MVC 상품 관리 웹 페이지 5] 상품 등록 처리 - @ModelAttribute [스프링MVC - 상품 관리 웹 페이지 만들기 4] 상품 등록 폼 (tistory.com) [스프링MVC - 상품 관리 웹 페이지 만들기 4] 상품 등록 폼 컨트롤러 로직 추가 /** 상품 등록 폼*/ @GetMapping("/add") public String addForm joly156.tistory.com →상품 등록을 완료하고 웹 브라우저의 새로고침 버튼을 클릭하면. 상품이 계속해서 중복 등록되는 문제 원인은? 웹 브라우저의 새로 고침은 마지막에 서버에 전송한 데이터를 다시 전송한다. 상품 등록 .. 2023. 9. 1.
[스프링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.
728x90
반응형