묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 핵심 원리 - 기본편
@MainDiscountPolicy 적용이 안되는 것 같습니다.
오류에는 애노테이션이 문제라고 하는 것 같은데..
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
ResponseBody 문자 반환은 JSON 형식으로 반환하는게 아닌건가요?
API가 객체를 JSON 형태로 바꿔서 반환하는 방식인데ResponseBody 문자 반환의 경우 HTTP 바디에 문자 그대로 반환.ResponseBody 객체 반환의 경우 컨버터를 이용해 JSON 형태로 바꿔 반환결국 두 경우 다 API 방식이지만 JSON 형태로 바꾸는건 객체 반환의 경우만이렇게 이해하면 될까요? 아니면 후자만 API 방식인걸까요 =========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.
-
해결됨스프링 핵심 원리 - 기본편
test 중 빌드 오류 - java.io.IOException: Unable to delete directory
안녕하세요. 영한님 덕분에 좋은 강의 잘 듣고 있습니다.그런데 이번 강의를 수강하던 중에 test를 실행하는 과정에서 갑작스럽게 빌드 오류가 발생하였습니다. java.io.IOException: Unable to delete directory~~이와 같은 메세지가 출력되는데 프로젝트 내의 build 폴더와 관련이 있는 듯 하여 삭제 후 다시 작동하면 처음엔 잘 돌아갈 때도 있지만, 한번 더 test를 실행하면 같은 오류가 다시 발생했습니다. (주로 build/test-result/test/binary가 지목되었습니다.)그 후로는 나름대로 구글링해보며 재부팅부터 시작해서 gradle 폴더 삭제, java 프로세스 중지, invalidate caches등 다양한 방법을 시도해 보았습니다. 하지만 간혹 해결된 경우에도 위의 상황과 같이 두 번째로 다시 돌려봤을 때는 오류가 반복됩니다. 혹시나 하여 새로운 프로젝트를 생성하고 수정하지 않은 채 test만 작동해 보았는데, 이 역시 같은 증상이 나타납니다. 그래서 현 상황에서는 test를 실행하려면 실행 전에 매번 수동으로 문제를 해결해주어야 합니다..수업 내용과 관계가 없는 듯 하여 가급적 제 선에서 해결하고 싶었지만 저와 같은 사례가 흔치 않아 어려움을 겪고 있습니다. 조언해주시면 정말 감사하겠습니다.
-
미해결스프링 부트 - 핵심 원리와 활용
@profile 여러개 설정방법
안녕하세요@Profile 어노테이션 사용할때 여러개의 환경일때 빈을 가져오고싶다하면@Profile(“test1”, “test2”), @Profile(“test1|test2”)위의 예시중에 어떤방식이 맞는건지 그리고 어떻게 가져오는건지 내부를 확인하고싶으면 어디를 확인하면 좋을지 질문드립니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberService 매개변수
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 MemberService 스프링빈 부분에서 return new MemberService(memberRepository); 가 아닌 return new MemberService(memberRepository()); 인 이유가 있을까요?
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
(path parameter) VS (query parameter)
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]리소스의 식별이냐, 정렬/필터와 같은 페이지네이션을 위함이냐와 같이 컨벤션에 따라 달라지는거 같은데, 실제로 작동하거나 기능에 있어서의 차이도 있을까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
인라인 부분 에러 해결방법이 있을까요?
vscode로 사용중이고 이전거까지는 강의 따라가는데 문제 없었습니다. 무엇이 문제일까요?컨트롤러와 뷰 부분 다 복붙입니다~
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
일반적인 실무에서의 Model에 할당되는 값
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]1. 선생님께서는 Model에 값을 추가할 때 항상 Member이나 Item과 같은 "객체"를 추가하셨는데 item.getId()나 member.getUsername() 같은 "단순 타입"을 추가하는 경우도 있나요?2.만약 없다면 "객체"를 모델로 추가하는 것이 정형화된 방법인가요?
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
혹시 섹션 3까지만 듣고 게시판 API를 만들어도 될까요?
(강의를 중단한다는 것은 아니고) 친구들끼리 게시판 API를 만들기로 했는데 지금까지 한 유저 API를 토대로 게시판 API를 만들어보고 싶은데 많이 다를까요?
-
미해결스프링 핵심 원리 - 기본편
단위테스트 시간 보는법
[질문 내용]테스트에 오류가 나지는 않는것 같은데, 단위테스트라 해도 어떤 테스트가 몇초 걸렸는지 저는 전체로 나오네요.. 각각 걸리는 것을 보고 싶은데 왜 이러는 걸까요? 참고로 상위 페키지 오른쪽 키 눌러 런 돌렸습니다!
-
미해결스프링 핵심 원리 - 기본편
회원 도메인 실행과 테스트 8:30 쯤 DIP 위반
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 회원 도메인 실행과 테스트 8:30 쯤 DIP 위반 언급하실 때MemberRepository는 인터페이스를 의존한다고 하시면서 MemberServiceImpl를 가리키셨는데 이해가 안가서요 ㅠㅠDIP가 어떻게 위반됐는지 다시 한 번 설명 부탁드립니다!
-
미해결스프링 핵심 원리 - 기본편
Request 스코프를 생성할때 그럼 항상 Provider를 사용해야하는건가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요싱글톤 스코프 빈에서 request 스코프 빈을 사용하려면 항상 provider를 이용해서 생성해야지 오류가 발생하지 않는건가요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
객체 연관관계 매핑 및 객체 지향 설계에 대해
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 테이블 설계를 하다가, 연관 관계 매핑에 대해서 고민을 하게 되었습니다.객체간의 연관관계 매핑은 정말 좋은 기술이더라구요. 여러 객체들간의 의존관계를 묶어주고 필요할때, 연달아서 조회할 수 있고 , update도 가능해서, 근데 여기서 고민을 하게 되었습니다.연관관계 매핑이라는것이 다른 테이블 설계를 할때 진짜 여러 객체를 물고 있더라구요. 어? 얘도 A,B연관관계 매핑이 되네. 얘도 매핑시키고 또 B에서 C도 매핑이 되네. 끊임없이 매핑을 저도 모르게 하고 있더라구요. 여기서 또 제 나름 객체 지향도메인 설계를 해보겠다고 하여, 객체안에서 처리하려고 하면 예를 들어 order라는 객체안에서 order라는 주문을 처리하려고 , 주문과 관련된 모든 객체를 끌어다가 처리하고 있더라구요. 근데 이러한 방식이 수정시에 side effect로 큰 문제가 생기더라구요. 여기 고치고 저기 고치고 하는 문제로. 갈피를 못잡는 문제가 생깁니다. 어떻게 하면 객체 연관 관계 매핑을 잘할수있을까 싶어서 질문드립니다. 맺고 끊음을 확실히 하는게 맞을거 같다는 생각이 들어서. 근데 말만 하면 모든 객체를 연관관계를 할수있는거 같고, 해결책이 없을까 질문드립니다. 모든 객체를 연관관계 시키는게 맞는것인지. 그리고 객체 지향적 도메인 설계에 대해서 질문도 드려봅니다..
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
윈도우 gradle 빌드 오류
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]Please set the JAVA_HOME variable in your environment to match the location of your Java installation.라는 오류가 떠서 이것저것 다 찾아보고 자바 버전 확인하려고 java -version, javac -version 다 해봐도 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 라고 뜨네요 ㅠㅠ. ide에서는 21버전으로 다 해놓았는데 왜 그럴까요 ㅠㅠ
-
해결됨스프링 DB 2편 - 데이터 접근 활용 기술
Test code 관련하여 궁금한 것이 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 강의 열심히 듣고 있습니다. 밑에 다른 분이 비슷한 질문을 해주셨는데, 해소되지 않는 부분이 있어 질문을 남깁니다.Test 코드 작성시에 위에 @SpringBootTest annotation이 있는데, 해당 annotation이 붙으면 컨테이너가 자동으로 실행되어 spring boot 환경에서 test를 진행이 가능한 것으로 알고 있습니다. 결국 주입을 자동으로 받는 다는 것은 memberRepository가 빈으로 등록되어있다는 뜻인 것 같은데, memberRepository는 test가 아닌 실제 main쪽 패키지에 존재하는데 어떻게 등록이 가능한건가요? main쪽에 있는 ItemServiceApplication이 실행되는 것인가요?이전에도 비슷하게 실행한 적이 있는 것 같은데.. 그때는 인지하지 못하다가 문득 궁금해져서 질문을 남깁니다.감사합니다.
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Welcome Page만들기
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]위 스크린샷처럼 코드 8번줄, 9번줄에 있는 hello들이 빨간색 밑줄이 있어서 오류인가 싶어서 alt+enter로 인텔리제이에서 알려준 첫번째걸로 오류를 수정했더니 아래처럼 수정되었습니다.근데 둘 다 웹브라우저에서 정상적으로 동작하던데 왜 그런걸까요? 혹시 첫번째 스크린샷처럼 빨간 밑줄이 있어도 상관없나요? 스프링부트는 버전 3.2.2 자바는 버전 21입니다.
-
미해결스프링 핵심 원리 - 기본편
@Configuration이 없는 DiscountService 클래스에 대해
static class DiscountService { private final Map<String, DiscountPolicy> policyMap; private final List<DiscountPolicy> policies; @Autowired public DiscountService(Map<String, DiscountPolicy> policyMap, List<DiscountPolicy> policies) { this.policyMap = policyMap; this.policies = policies; System.out.println("policyMap = " + policyMap); System.out.println("policies = " + policies); } public int discount(Member member, int price, String discountCode) { DiscountPolicy discountPolicy = policyMap.get(discountCode); return discountPolicy.discount(member, price); } }강의 예시처럼 DiscountService class에 @Configuration을 달지 않고,ApplicationContext ac = new AnnotationConfigApplicationContext(AutoAppConfig.class, DiscountService.class); 코드를 실행시켰을 경우 단순히 개별 discountService 빈을 스프링 컨테이너인 ac에 등록되는 것인가요?
-
미해결스프링 핵심 원리 - 기본편
초기화 의미
빈이 생성되고 나서 해당 빈에 의존 관계를 주입해준 다음 필드(속성)값을 넣어주는 과정을 초기화라고 하나요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. mvc2 강의는 대체적으로 타임리프 기반으로 설명을 해주시는거 같습니다. 현업에서는 타임리프를 쓰지 않고 프론트-백으로 구분해서 API만 전달해주는 것으로 알고 있는데, 그렇다면 이 상황에서 메세지,국제화, 검증 이런 기능들은 어떻게 구현을 하는건가요?
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
테스트 코드 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]상품주문 테스트 코드를 진행 중 자꾸 오류가 뜨는데 찾아보니 member 는 insert 가 잘 되는데 book 객체는 insert 되는 문구가 없고 getId() 값 조차 없는데 강의자료랑 다 맞춰보고 했는데도 해결이 안되서 글 남겨요..