inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

검증1 - Validation-오류 코드와 메시지 처리1강의 중에 질문이잇습니다.

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

섹션 4. 검증1 - Validation-오류 코드와 메시지 처리1강의 중에 질문이잇습니다. 아래는 해당 강의 코드 중 일부분입니다. 제가 궁금한 내용은 위의 사진처럼 new가 3번 나오는데 위의 그림처럼 이해해도 되나요? 즉 bindingResult 변수 안에 FieldError객체 생성하고 그 안에 new String[]1개,new Object[]1개생성되는것이 맞나요? // @PostMapping("/add") public String addItemV3(@ModelAttribute Item item, BindingResult bindingResult, RedirectAttributes redirectAttributes, Model model) { //검증 로직 if (!StringUtils.hasText(item.getItemName())) { bindingResult.addError(new FieldError("item", "itemName", item.getItemName(), false, new String[]{"required.item.itemName"}, null, null)); } if (item.getPrice() == null || item.getPrice() < 1000 || item.getPrice() > 1000000) { bindingResult.addError(new FieldError("item", "price", item.getPrice(), false, new String[]{"range.item.price"}, new Object[]{1000, 1000000}, null)); } if (item.getQuantity() == null || item.getQuantity() >= 9999) { bindingResult.addError(new FieldError("item", "quantity", item.getQuantity(), false, new String[]{"max.item.quantity"} ,new Object[]{9999}, null)); } //특정 필드가 아닌 복합 룰 검증 if (item.getPrice() != null && item.getQuantity() != null) { int resultPrice = item.getPrice() * item.getQuantity(); if (resultPrice < 10000) { bindingResult.addError(new ObjectError("item",new String[]{"totalPriceMin"} ,new Object[]{10000, resultPrice}, null)); } } //검증에 실패하면 다시 입력 폼으로 if (bindingResult.hasErrors()) { log.info("errors={} ", bindingResult); return "validation/v2/addForm"; } //성공 로직 Item savedItem = itemRepository.save(item); redirectAttributes.addAttribute("itemId", savedItem.getId()); redirectAttributes.addAttribute("status", true); return "redirect:/validation/v2/items/{itemId}"; }

  • spring
  • mvc
zzzzz 댓글 1 좋아요 0 조회수 213

V3 회원 에러

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의와 PDF 자료를 반복하면서 찾아봤지만 어떤 문제인지 잘 모르겠습니다.... 혹시 도와주실 수 있나요? ㅠㅠ [구글드라이브] https://drive.google.com/file/d/1q6pVce7vTuhJV_ilO5rSr9OYhVt4qPnj/view?usp=sharing

  • spring
  • mvc
gump 댓글 1 좋아요 0 조회수 351

중복_회원_예외() 질문드립니다!

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 마지막 assertThat을 강사님은 when 밑에 넣고 then밑에 넣지는 않으셨는데 이유가 뭘까요??

  • java
  • spring
  • mvc
  • spring-boot
김철준 댓글 2 좋아요 0 조회수 468

h2.bat 실행 오류

미해결

스프링 DB 1편 - 데이터 접근 핵심 원리

윈도우용을 설치하고 bin의 h2.bat 을 돌리면 cmd 창에 아래와 같이 뜹니다. 버전은 2.2.224 로 라이브러리에 맞춰서 깔았습니다. 회사 pc에서는 문제가 없었는데, 집 노트북에서 문제가 생기네요. 원인과 해결책을 아시면 좀 알려주세요 'java'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 계속하려면 아무 키나 누르십시오 . . .

  • spring
  • mvc
  • spring-jdbc
jfk6725 댓글 1 좋아요 0 조회수 475

BasicItemControllerV2 코드 질문있습니다.

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

@PostMapping("/add") public String addItem2(@ModelAttribute("item") Item item, BindingResult bindingResult, RedirectAttributes redirectAttributes, Model model){ //검증 오류 결과를 보관 Map<String,String> errors=new HashMap<>(); //검증 로직 if (!StringUtils.hasText(item.getItemName())) { bindingResult.addError(new FieldError("item","ItemName","상품 이름은 필수입니다.")); // errors.put("itemName", "상품 이름은 필수입니다."); } if (item.getPrice() == null || item.getPrice() < 1000 || item.getPrice() > 1000000) { bindingResult.addError(new FieldError("item","Price","가격은 1,000 ~ 1,000,000 까지 허용합니다.")); // errors.put("price", "가격은 1,000 ~ 1,000,000 까지 허용합니다."); } if (item.getQuantity() == null || item.getQuantity() >= 9999) { // errors.put("quantity", "수량은 최대 9,999 까지 허용합니다."); bindingResult.addError(new FieldError("item","Quantity","수량은 최대 9,999 까지 허용합니다.")); } //특정 필드가 아닌 복합 룰 검증 if (item.getPrice() != null && item.getQuantity() != null) { int resultPrice = item.getPrice() * item.getQuantity(); if (resultPrice < 10000) { // errors.put("globalError", "가격 * 수량의 합은 10,000원 이상이어야 합니다. 현재 값 = " + resultPrice); bindingResult.addError(new ObjectError("item","가격 * 수량의 합은 10,000원 이상이어야 합니다. 현재 값 = + resultPrice")); } } if (bindingResult.hasErrors()){ log.info("errors={}",errors); model.addAttribute("errors",errors); return "validation/v2/addForm"; } 위에 코드는 BasicItemControllerV2 중 일부 입니다. FieldError는 item class에 있는 엔티티를 찾아서오류를 출력해주는건가요? ObjectError는 item class에 엔티티가 없어서 새로 item 객체를 생성해서 가격을 검사하는건가요?

  • spring
  • mvc
zzzzz 댓글 1 좋아요 0 조회수 190

ERROR null로 출력되는 문제

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

에러페이지인 error-ex, error-page/404, error-page/500 3개를 들어갔을 때 에러들이 출력되게 했습니다. 다른 질문들에서도 비슷한 오류를 가진 분들이 있어서 한번 해봤습니다. 1차적으로 javax를 jakarta로 바꿨습니다. public static final String ERROR_EXCEPTION = "jakarta.servlet.error.exception"; public static final String ERROR_EXCEPTION_TYPE = "jakarta.servlet.error.exception_type"; public static final String ERROR_MESSAGE = "jakarta.servlet.error.message"; public static final String ERROR_REQUEST_URI = "jakarta.servlet.error.request_uri"; public static final String ERROR_SERVLET_NAME = "jakarta.servlet.error.servlet_name"; public static final String ERROR_STATUS_CODE = "jakarta.servlet.error.status_code"; log.info 에서 해당 상수들을 출력해보려고 했더니 error-ex페이지에서는 잘 출력되지만 404와 500에서는 모든 값이 null로 출력되었습니다. 2차적으로 RequestDispatcher.ERROR_EXCEPTION처럼 모든 log.info 에서 상수를 이용하는것이 아닌 RequestDispatcher.**를 사용했습니다. 이렇게 바꿨음에도 error-ex 페이지는 잘 출력되었지만 404와 500에서는 모든 값이 null로 출력되었습니다.

  • spring
  • mvc
댓글 2 좋아요 0 조회수 1216

검증1부분에 html이 이상하게 조회됩니다.

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

화면에서 아래와 같이 이렇게 뜹니다. 뭐가 문제인지 알려줄 수 있나요? html은 건드른게 없어요.

  • spring
  • mvc
zzzzz 댓글 1 좋아요 0 조회수 171

테스트코드 작성시

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 테스트 코드 작성시 Test Results라고만 나오고 하위에 save() 이렇게 나오지 않습니다. 왜 그런걸까요??

  • java
  • spring
  • mvc
  • spring-boot
김철준 댓글 2 좋아요 0 조회수 366

@ModelAttribute @RequestParam

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

안녕하세요. 강의를 듣던중 궁금한 내용이 생겼는데 구글링을 해도 명확한 답변이 나오지않아 질문드립니다ㅠㅠ 강의 내용중 컨트롤러의 파라미터에서, @ModelAttribute MultipartFile file와 @RequestParam MultipartFile file의 차이가 무엇인지 질문드립니다..! 강의 자료에서는 ' @ModelAttribute에서도 MultipartFile을 동일하게 사용할수있다 ' 고 되어있지만, 어차피 file.getOriginalFilename()을 사용하는것은 @ModelAttribute나 @RequestParam이나 동일한것같은데, 어떨때 @ModelAttribute를 사용해야하고, 어떨때 @RequestParam을 사용해야하는지 모르겠습니다.. 둘중 아무거나 사용해도 되는건가요..? 바로 뒤 강의에서는 @ModelAttribute로서 MultipartFile을 받아오는거같은데 어떨때 사용하는것인지 궁금해서 질문드립니다..! 감사합니다!

  • spring
  • mvc
오리쉐리 댓글 1 좋아요 1 조회수 261

pdf 파일에 이거 추가하면 좋을 것 같습니다

해결됨

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의에서 messages.properties 에 한글로 저장을 하게 되는데, 인텔리제이를 사용하면 한글 깨짐이 발생하더라구요 Setting - File Encodings에서 Default encoding for properties files 를 ISO-8859-1 에서 UTF-8 로 변경후 Transparent native-to-ascil conversion 체크하면 해결돼서 혹시 도움이 될까 하고 남겨봤습니다

  • spring
  • mvc
Sully 댓글 2 좋아요 2 조회수 534

@GetMapping 같은 어노테이션 문법

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] @GetMapping, @RequestParam같은 걸 어노테이션이라고 한다는데 이거에 대한 문법같은걸 배우고 들어야 할까요?

  • java
  • spring
  • mvc
  • spring-boot
김철준 댓글 2 좋아요 0 조회수 483

group by agg function failed 에러

미해결

공공데이터로 파이썬 데이터 분석 시작하기

1.5 groupby 까지 안막히고 잘 오다가 여기서 막힙니다. df_last.groupby(["지역명"]).mean() 작성했을때 TypeError: agg function failed [how->mean,dtype->object] 에러가 뜹니다. 그런데 이어서 ["평당분양가격"]을 타이핑 하면 정상 결과가 나옵니다. 무슨 문제일까요.,?

  • python
  • pandas
  • numpy
robert 댓글 2 좋아요 0 조회수 718

강의 20강 질문 및 오류관련

미해결

[NarP Series] MVC 프레임워크는 내 손에 [나프1탄]

20강 수강중입니다. membervo에서 pass는 int로 지정되어있짐만 memberInsertController에서는 String으로 되어있는지 궁금합니다. 위 내용으로 인해 오류가 발생합니다. 도와주세요 java: constructor MemberVo in class model.MemberVo cannot be applied to given types; required: int,java.lang.String,int,java.lang.String,int,java.lang.String,java.lang.String found: no arguments reason: actual and formal argument lists differ in length

  • jsp
  • mysql
  • mvc
  • ajax
  • pojo
TheMoon 댓글 1 좋아요 0 조회수 236

sort() 질문 드립니다.

미해결

[React 1부] 만들고 비교하며 학습하는 React

안녕하세요. 최근 검색어 구현 중 Store.js에서 스토리지의 historyData를 받아와서 sort를 할 때, 강의에서 나오는대로 > 부등호로 하면 정렬이 되지 않고 - 를 해줘야 내림차순으로 정렬이 됩니다. 왜 강의와 똑같이 부등호로 했을 때 정렬이 안되는 것일까요? getHistoryList() { return this.storage.historyData.sort(this._sortHistory); // 날짜 역순 정렬 } _sortHistory(history1, history2) { // return history2.date > history1.date; return history2.date - history1.date; }

  • react
  • mvc
현지원 댓글 2 좋아요 1 조회수 337

H2 데이터베이스 설정 관련 질물

미해결

스프링 DB 1편 - 데이터 접근 핵심 원리

h2.bat을 실행하면 cmd 창이 계속 떠 있습니다. (cmd 창을 죽이면 콘솔 접속이 안되네요) 정상인가요?

  • spring
  • mvc
  • spring-jdbc
jfk6725 댓글 1 좋아요 0 조회수 230

사이트 연결 오류

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의와 똑같이 진행했는데 어떤부분이 오류 발생원인인지 파악을 못하겠습니다. ㅠㅠ [구글 드라이브 주소] https://drive.google.com/file/d/1HzSpLYQbb-IFI5ho7YYkSjGvV0ZOySYm/view?usp=drive_link

  • spring
  • mvc
gump 댓글 1 좋아요 0 조회수 203

검증1 - Validation 강의에서 질문이 있습니다.

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

mvc1편에 이어서 작업한거 이후에 강의대로 v1~v4버전을 만들었는데요. 근데 item들어가면 화이트 페이지 뜹니다. 제가 생각하기에는 basic에서 validation으로 변수 다 바꿔줬는데 안되는지 이해가 안됩니다. 아래는 전체코드입니다.

  • spring
  • mvc
zzzzz 댓글 1 좋아요 0 조회수 187

검증1 - Validation-검증 직접 처리 - 개발 질문입니다.

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

@PostMapping("/add") public String addItem(@ModelAttribute("item") Item item, RedirectAttributes redirectAttributes,Model model){ //검증 오류 결과를 보관 Map<String,String> errors=new HashMap<>(); //검증 로직 if (!StringUtils.hasText(item.getItemName())) { errors.put("itemName", "상품 이름은 필수입니다."); } if (item.getPrice() == null || item.getPrice() < 1000 || item.getPrice() > 1000000) { errors.put("price", "가격은 1,000 ~ 1,000,000 까지 허용합니다."); } if (item.getQuantity() == null || item.getQuantity() >= 9999) { errors.put("quantity", "수량은 최대 9,999 까지 허용합니다."); } //특정 필드가 아닌 복합 룰 검증 if (item.getPrice() != null && item.getQuantity() != null) { int resultPrice = item.getPrice() * item.getQuantity(); if (resultPrice < 10000) { errors.put("globalError", "가격 * 수량의 합은 10,000원 이상이어야 합니다. 현재 값 = " + resultPrice); } } if (!errors.isEmpty()){ log.info("errors={}",errors); model.addAttribute("errors",errors); return "basic/addForm"; } Item savedItem = itemRepository.save(item); redirectAttributes.addAttribute("itemId",savedItem.getId());//인코딩 redirectAttributes.addAttribute("status",true); return "redirect:/basic/items/{itemId}";//위에는 포스트로 상품 추가 해주고 밑에는 다시 get으로 호출시키는 방법. } @ModelAttribute("item") Item item <-이부분이 item class의 엔티티를 의미하고 Model model 은 메소드에서만 사용하는 특정 임시 객체로 이해하면 되나요? @ModelAttribute은 model.addAttribute가 자동으로 생성되는데요. 큰 기숙사 안에서 동일한 룸에 에러코드도 들어가고 아이템 모델도 들어가는건가요?

  • spring
  • mvc
zzzzz 댓글 2 좋아요 0 조회수 234

상품 수정 강의 질문있습니다.

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

@GetMapping("/{itemId}/edit") public String editForm(@PathVariable Long itemId, Model model) { Item item = itemRepository.findById(itemId); model.addAttribute("item", item); return "basic/editForm"; } GetMapping에 {itemId}가 있는데 이변수는 어디서 받아오는건가요? 저는 item class에서 받아온다고 생각했는데 아래는 id로 소문자인데 itemId는 어디서 받아오는건가요? 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() { }

  • spring
  • mvc
zzzzz 댓글 1 좋아요 0 조회수 177

상품 출력 질문입니다.

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

맨 윗 사진이 사진1, 두번째 사진이 사진2라고 가정시. package com.example.itemstore.itemservice.web.basic; import com.example.itemstore.itemservice.domain.item.Item; import com.example.itemstore.itemservice.domain.item.ItemRepository; import jakarta.annotation.PostConstruct; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.mvc.support.RedirectAttributes; import java.util.List; @Controller @RequestMapping("/basic/items") @RequiredArgsConstructor public class BasicItemController { private final ItemRepository itemRepository; @GetMapping public String items(Model model){ List<Item> item=itemRepository.findAll(); model.addAttribute("item",item); return "basic/items"; } @GetMapping("/{itemId}") public String item(@PathVariable long itemId, Model model){ Item item = itemRepository.findById(itemId); model.addAttribute("item",item); return "basic/items"; } @GetMapping("/add") public String addForm() { return "basic/addForm"; } /**테스트용 데이터 추가 / @PostConstruct public void init(){ itemRepository.save(new Item("a",10,1)); } } 질문 : 위 코드는 사진 2처럼 나오고 아래코드는 사진1처럼 정상출력되는데 이유가 뭔가요? 변수명items과 model.addAttribute에 이름을 같게 넣어서 아래 위 코드 둘다 같은 결과가 나와야 한다고 생각하는데 막상 실행하면 결과가 다르게 나와서요. public class BasicItemController { private final ItemRepository itemRepository; @GetMapping public String items(Model model){ List<Item> items=itemRepository.findAll(); model.addAttribute("items",items); return "basic/items"; } 전체코드: https://drive.google.com/file/d/1wGf0aRjKQ-haXmTupwJy9KUVwoY8gIbY/view?usp=drive_link 질문: 아래 링크 추가질문 올려놨는데 답변 부탁드립니다. https://www.inflearn.com/questions/1251246/%EC%83%81%ED%92%88-%EB%93%B1%EB%A1%9D-%EC%B2%98%EB%A6%AC-modelattribute-%EC%A7%88%EB%AC%B8%EC%9E%85%EB%8B%88%EB%8B%A4

  • spring
  • mvc
zzzzz 댓글 1 좋아요 0 조회수 166

인기 태그

인프런 TOP Writers

주간 인기글