묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
OrderSimpleQueryDtos 생성 시 AllArgsContructor 사용
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 강의를 들으면서 5분 쯤에 new jpabook 을 통해 쿼리의 select 결과물을 선택하는 코드 부분에 강사님께서 OrderSimpleQueryDtos 의 생성자를 만드실 때 궁금한 점이 있습니다. 생성자를 만들 경우 @AllArgsConstructor 를 사용해서하는 것과 강사님께서 직접 하나씩 주입해주시는 것의 차이가 있을까요?
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
상품 주문에서 insert가 안되고 select 됩니다
회원 가입, 상품 등록에는 데이터 베이스 insert가 사용하나상품 주문 에서는 insert가 아닌 select만 사용 됩니다.2h 페스워드는 jpashop 입니다https://drive.google.com/file/d/1aCGyaNxhGlpeWDy0EIkNp5wBgV4WVLaA/view?usp=sharing
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
도커 질문이 있습니다.,
강의자료와 똑같이 진행했는데 도커의 포트폴리오를 실행하면 1초뒤에 바로 종료됩니다. 원인이 뭘까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemoryMemberRepositoryTest 실행시 오류
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]@Test public void findByName(){ Member member1 = new Member(); member1.setName("spring1"); repository.save(member1); Member member2 = new Member(); member2.setName("spring2"); repository.save(member2); Member result = repository.findByName("spring1").get(); assertThat(result).isEqualTo(member1); //result와 member1이 같은지 아닌지 판단 }이 findByName() 실행하기 이전까지는 앞부분은 전부 test도 잘 되었고, 오류 없이 출력이 되었습니다. 이걸 test하니까위와 같이 뜨면서 MemoryMemberRepository.java에서 아래 사진과 같이 .findAny(); 부분에 오류가 뜹니다.다른 질문글을 찾아보니 강의 교안 코드에 나와 있지 않은 null에 관한 내용을 작성해야 하나 싶은 찰라에 새로운 오류까지 발생하였습니다. https://drive.google.com/file/d/1F5YGcP4JR40gl4Ke8unTL-Jk8zIosp_w/view?usp=sharing
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
UsernamePasswordAuthenticatioToken
안녕하세요, 문의 사항이 있어 글 납깁니다...당장에 이해가 안되어서요,,,,UserDetailService . loadUserByUsername()은 password활용 없이 ID만을 통해 find하게 짜도 문제 없나요,,? 어디선가 password를 따로 비교해주나요???....?어떤 컬럼인지 어떻게 알고 비교해주지,,,ㅁ 질문드립니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
hello 페이지로 안들어가집니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]여기에 질문 내용을 남겨주세요.>>> 어노테이션이 저렇게 뜨는데 설정을 바꾸는 방법을 못찾겠어요. >>> 해당 컨트롤러로 못들어갑니다 ㅜㅜ 에러페이지가 나와요
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
cascade, 연관관계 사용 기준 질문.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 강의 잘 듣고 있습니다.cascade,연관 관계를 사용하는 기준이 궁금해서 질문 글을 작성합니다.1.cascade 질문제가 이해한 바로는 엔티티를 영속성 컨텍스트 관리를 받기 위해 persist 등록하는 것이며 각 엔티티는 따로따로 persist를 해야 되는데 cascade를 사용하면 하나의 엔티티를 persist할 때 그와 연관된 엔티티를 같이 해주는 것으로 이해했습니다. Order 코드에서 OrderItem과 Delivery에 cascade가 적용됐는데 Member에는 적용을 안 하는 것 같더라고요. 왜 Member는 안 하는지 궁금합니다. 연관 관계 질문order와 연관된 엔티티 간에 연관관계 메소드를 통해 한쪽에서 서로 등록해주는 것은 이해가 가는데 Item과 Category간에는 어느 쪽에도 연관 관계 메소드가 없는 이유가 궁금합니다. Item과 Category 이 둘은 약간 상수? 느낌이라서 연관 관계를 지을 필요가 없는 것일까요? 답변 주시면 정말 감사하겠습니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Category, Item 연관관계
이전 강의를 통해 연관관계의 주인이 아닌 클래스에 mappedBy 속성을 사용한다고 이해하였습니다. Category 에 @JoinTable 을 사용하고, Item 에 mappedBy 속성을 사용하셨는데 왜 Item 에 mappedBy 를 사용하신 것인지 궁금해서 질문 남깁니다. 감사합니다.
-
해결됨스프링 부트 - 핵심 원리와 활용
라이브러리 자동구성 ConditionalOnProperties관련 질문입니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하십니까관련 ConditionalOnProperties관련 설정을 하다 궁금한점이 있어 여쭙고자 적습니다.자동구성을 만들기 위해 memory 프로젝트에 ConditionalOnProperties에 특정 name을 셋팅하고 해당 name에 대한 환경정보를 project-v2 application.yml에 입력했을때는 해당 값을 읽지 못하는 것 같습니다.JVM 옵션으로 주는 방법이 아닌 application.yml의 값을 읽기 위해서는 별도의 설정이 필요한가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
윈도우 cmd 창에서 gradlew.bat 빌드 success 이후 lib 디렉토리가 생성 안되요
C:\Users\hong_\Desktop\hello-spring1>gradlew.bat> Task :helpWelcome to Gradle 8.5.To run a build, run gradlew <task> ...To see a list of available tasks, run gradlew tasksTo see more detail about a task, run gradlew help --task <task>To see a list of command-line options, run gradlew --helpFor more detail on using Gradle, see https://docs.gradle.org/8.5/userguide/command_line_interface.htmlFor troubleshooting, visit https://help.gradle.orgBUILD SUCCESSFUL in 760ms1 actionable task: 1 executedC:\Users\hong_\Desktop\hello-spring1> cd build C:\Users\hong_\Desktop\hello-spring1\build 디렉터리2024-02-13 오전 10:57 <DIR> .2024-02-13 오전 10:57 <DIR> ..2024-02-13 오전 10:57 <DIR> classes2024-02-13 오전 10:57 <DIR> generated2024-02-13 오전 10:57 <DIR> resources2024-02-13 오전 10:57 <DIR> tmp 0개 파일 0 바이트 6개 디렉터리 366,841,688,064 바이트 남음
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
thymeleaf.org html 영상의 코드와 pdf 2장의 View 코드와 다르네요..
PDF 파일에는 View라는 코드는 아래 코드 밖에 없습니다<html xmlns:th="http://www.thymeleaf.org"><body><p th:text="'hello ' + ${name}">hello! empty</p></body></html> 혹시 10줄 인 영상이랑 같은 코드좀 공유해 주실 수 있으신가요?
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
34강 orphanRemoval 관련 질문입니다!
orphanRemoval 을 걸지 않았을 경우책6을 삭제했으나, userLoanHistories를조회해보면 여전히 책6이 존재한다.orphanRemoval = true 을 걸었을 경우클린 코드를 삭제했더니조회시 사라졌다어째서 orphanRemoval을 걸어주지 않으면데이터베이스에 반영이 되지 않는건가요? @Transactional어노테이션으로 인해 트랜잭션이 시작될 때,영속성 컨텍스트가 시작되고,영속성 컨텍스트의 4대 특징 중 하나인생성/수정 감지로 인해user 객체의 userLoanHistories 의 값에변경사항(removeOneHistory)이 발생하여자동저장이 될거라고 생각했는데 말이죠.. 실제 데이터베이스상에선 userLoanHistories 는user테이블의 필드가 아니기 때문에,영속성 컨텍스트가 관리하는 field 에 포함이 되지않는데orphanRemoval = true 를 걸어주면비로소 자신이 관리하는 field로 인식하는걸까요?원리가 너무 궁금해요.. 내용추가1)바로 다음 강의인 책 대출 리팩토링에선orphanRemoval 같은 옵션을 주지 않고도new userLoanHistory를 add한 내용대로 저장이 되는데,어째서 userLoanHistory를 remove하는것은orphanRemoval 옵션이 없으면데이터의 변경이 일어나지않는지 궁금합니다.. 제 생각에는 User에서 userLoanHistories.add를 하든 userLoanHistories.remove 를 하든둘 다 User와 UserLoanHistory 와의 연관관계를 이용한데이터를 변경하기위한 접근같은데 ..add는 되는데 remove는 안되는게 살짝 이해하기 어렵습니다 ㅠ 내용추가2)returnBook과 loanBook , removeOneHistory의 차이점이 뭘까 고민해봤는데returnBook 과 loanBook 은UserLoanHistory라는 Entity에 접근하는 과정(loanBook은 Entity객체생성, returnBook은 Entity의 property 수정)이 존재하고, removeOneHistory는 Entity에 직접 접근하는게 아니라 단순히 List에 대한 변경일뿐이고, Entity에 대한 직접적인수정이나 생성이 이뤄진것이 아니므로 데이터베이스의 변경이 일어나지 않았다.이렇게 이해했는데 제가 이해한 내용이 맞을까요?생각을 정리하다보니 질문이 길어진 점 죄송합니다 ㅠ
-
해결됨스프링 부트 - 핵심 원리와 활용
java -Dspring.profiles.active=dev -jar .\external-0.0.1-SNAPSHOT.jar 오류가 발생합니다
[질문 내용]java -Dspring.profiles.active=dev -jar .\external-0.0.1-SNAPSHOT.jar -D 옵션을 빼고 실행하면 잘 작동하는데, -D를 붙이면 오류가 납니다. Error: Could not find or load main class .profiles.active=devCaused by: java.lang.ClassNotFoundException: /profiles/active=dev 현재 환경 변수는 아래와 같이 설정해두었습니다.JAVA_HOME = C:\Program Files\Java\jdk-17CLASSPATH = %JAVA_HOME%\lib CLASSPATH를 아래와 같이 바꾸는 방법도 해봤는데 안되네요. CLASSPATH = %JAVA_HOME%\lib;. Build - Gradle 설정은 아래와 같습니다. https://www.inflearn.com/questions/819583/could-not-find-or-load-main-class-%EC%97%90%EB%9F%AC-%ED%95%B4%EA%B2%B0 여기에 나와있는 해결책 2개는 모두 적용해봤습니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
H2 2.2.224버전 MVCC
저는 현재 스프링 부트 최신 버전 3.2.2 를 쓰고H2는 2.2.224 버전을 사용하고 있습니다.테스트를 할 때 실패가 떠서 확인해보니org.h2.jdbc.JdbcSQLNonTransientConnectionException: Unsupported connection setting "MVCC" [90113-224] 위와 같은 오류가 생겼습니다.H2 데이터베이스의 MVCC 옵션은 1.4.200 버전부터 deprecated 되었고, 이후 버전에서는 완전히 제거되었다고 합니다.url: jdbc:h2:tcp://localhost/~/jpashop저와 같은 오류가 생기시는 분이 있으시다면 이렇게 MVCC 부분을 제거하고 실행하시면 테스트가 잘 돌아갑니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
이미 존재하는 회원이라고 오류가 뜹니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.전 강의에서 통합테스트할 때는 잘 돌아갔는데 jdbc 템플릿으로 코드를 수정하니 이런 오류가 뜹니다. 코드에는 빨간불이 안 떠요. 문제가 뭘까요?껐다 다시 키고 실행하니 이렇게 뜹니다. integrationtest클래스랑 회원가입, 중복회원예외에 다 빨강느낌표 표시가 뜨고 저런 오류가 떠요.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
CascadeType.ALL 질문
엄청난 질문은 아니짐만 궁금한점이 있어 질문드립니다. CascadeType.ALL을 사용하면 자동으로 연관된 엔티티나 자식 엔티티들의 영속성을 관리해주는것으로 이해했는데 그렇게되면 fetch = EAGER을 사용할때와같은 데이터베이스 과부하 문제가 발생하지는 않는지 질문드립니다.실무에선 CascadeType.ALL을 잘 사용하는지 경우를 나누어서 사용한다면, 언제는 부적절하고 언제는 사용하는 것이 적절한지 궁금합니다. 사용하지 않는다면 대안은 무엇인지 궁금합니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
application.yml을 꼭 main/resources/application.yml 경로에 넣자
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]application.yml파일을 main/resources/application.yml에 넣었다고 생각했는데 폴더 바깥에 두어서 한동안 뭔지도 모르고 헤맸습니다.. 혹시 저와 똑같이 헤매시는 분이 있을까 해서 글 남깁니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
버전 3.2.2 테스트 오류 - 해결은 했지만 궁금한 점
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용] id 'java' id 'org.springframework.boot' version '3.2.2' id 'io.spring.dependency-management' version '1.1.4'java { sourceCompatibility = '17'}현재 쓰는 버전입니다.애플리케이션 실행에는 문제가 없지만 테스트시에 아래와 같이 오류가 뜹니다.Execution failed for task ':test'.> There were failing tests. See the report at: file:///C:/Workspace/jpa_%EA%B0%95%EC%9D%98/jpashop/build/reports/tests/test/index.html* Try:> Run with --scan to get full insights.Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.For more on this, please refer to https://docs.gradle.org/8.5/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.BUILD FAILED in 1s4 actionable tasks: 1 executed, 3 up-to-date이에 대한 해결 방법을 찾아 보던 중파일 - 설정 - 빌드,실행,배포 - gradle - 다음을 사용하여 테스트 실행 - IntelliJ IDEA 로 변경을 하여 해결하였습니다.해결은 했지만 왜 이와같은 오류가 일어났었는지 IntelliJ IDEA 로 테스트를 실행하도록 했을 때 왜 동작하는지 앞으로 다른 문제가 발생하지는 않을지 궁금합니다.
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
내장 톰캣에 대해 궁금한게 있습니다.
스프링부트에부터는 내장 톰캣을 사용하는거엔 익숙해져 있는데,과거에는 RedHat JBoss와 같은 외장 WAS들을 사용했다고 하던데 이로 인해 발생하는 단점 같은 것은 없을까요? 예를 들어 기술 지원을 더이상 받지 못한다던가.. 외장 WAS들이 가지고 있는 장점이 사라진다거나 성능의 차이같은 것은 없는지 궁금합니다. 검색을 해보았을 땐 내장 톰캣이 아파치 톰캣 개발자들도 내장 톰캣의 사용에 문제가 없다라고 했다던지, 성능 차이가 크지 않다는 자료들은 찾았는데 아직 여전히 스프링부트를 사용하지 않는 회사들이 많다고 알고 있습니다. 강의 내용처럼 이렇게 편리하다면 스프링부트의 버전업은 몰라도 스프링'만' 쓰는 회사들이 시스템을 스프링부트로 업그레이드 하지 않을 이유는 없을 것 같아서요! 친절한 강의 감사드립니다. 태현님!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
localhost:8080/hello 에러 발생
안녕하세요. localhost:8080/hello 을 실행하면 whitelabelerror 500이 발생 합니다. 경로도 영어로 바꿨고, 코드도 확인했고, 실행 중인지도 확인 했는데 안 됩니다.해결 방법이 궁금합니다.