inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

도커 데스크탑을 설치하고 실행시킬려니 WSL오류가 나는데 ...

미해결

개발자를 위한 쉬운 도커

window11에서 도커를 설치하고 실행할려니 위의 에러가 나옵니다. 어떻게 해결해야 될지 몰라서 문의드립니다.

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
data gb 댓글 2 좋아요 0 조회수 3992

leafy 로그인이 되지 않습니다!

미해결

개발자를 위한 쉬운 도커

강사님 안녕하세요 leafy 애플리케이션 강의 중에 로그인이 되지 않는 문제로 질문 드립니다! 프론트엔드, 백엔드, db 컨테이너 모두 실행시켰는데, 백엔드 컨테이너에 로그가 안남고 프론트엔드 컨테이너 로그를 보니 , "POST /api/v1/users/login HTTP/1.1" 404 555 " http://local host/login" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/ 이러한 에러가 발생하는 걸로 보아 프론트엔드 - 백엔드 간 api 요청이 제대로 안됩니다.

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
댓글 2 좋아요 0 조회수 177

goopang-target-group 에서 unhealthy

미해결

AWS로 쉽고 빠르지만 아주 견고한 서버 환경을 구축하는 방법

안녕하세요 강사님. private-ec2-instance 의 Inbound Rules 에 goopang-alb 의 http 요청을 허용해주었는데, 여전히 goopang-target-group 에서 unhealthy 로 표시됩니다. Health status details 에는 Health checks failed 로만 나옵니다.. 이전 강의에서 NAT Gateway, Elastic IP 를 비용 문제로 삭제를 했었는데, 이후에 강의 들의 실습을 정상 진행하려면 2개를 삭제하면 안되었나요? 이번 강의도 2개를 삭제해서 문제가 발생한 경우일까요? NAT Instance 는 삭제하지 않았습니다.

  • aws
  • docker
  • msa
  • container
  • ecs
  • fargate
rjf1138 댓글 11 좋아요 1 조회수 767

주문상품 양방향

해결됨

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

주문상품과 주문은 다대일 양방향인데 주문상품과 상품은 다대일 단방향으로 하셨는데 첫번째는 양방향으로 설정하신 이유가 뭘까요?

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
에어 댓글 1 좋아요 0 조회수 174

em.persist에 대해서 궁금한 점이 있습니다.

미해결

실전! 스프링 데이터 JPA

제 기억속에 jpa 활용편에서 들었던 내용이였던 거 같은데 em.persist()를 호출하게 되면 id값이 자동증가여서 값이 null이기 때문에 em.flush를 호출안해줘도 persist와 동시에 flush가 호출된다고 기억속에 있습니다... 혹시 맞을까요..?

  • java
  • spring
  • spring-boot
  • jpa
kongminoo 댓글 1 좋아요 0 조회수 146

어려워요!

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예 /아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] 자바 중급까지 듣고 스프링 입문 강의를 한번 들어봤는데 자바 중급 강의 까지는 이해도 잘 되고 좋았습니다. 그런데 이번 스프링 입문 강의 들으니 이해가 쉽지가 않네요 스프링 기본 강의로 넘어가면 자바 강의했던거 처럼 차근차근 가르쳐 주시는건가요? 아니면 여기서 이해 안되는 것들 다 알고 넘어가야 하나요?

  • java
  • spring
  • mvc
  • spring-boot
이승호 댓글 2 좋아요 0 조회수 343

더티체킹에 궁금한 점이 있습니다.

미해결

실전! 스프링 데이터 JPA

public void updateUserName(Long userId, String newName) { User user = userRepository.findById(userId) .orElseThrow(() -> new CustomException("User not found with id: " + userId)); user.setName(newName); userRepository.save(user); } 여기서 findById로 인해 영속성 컨텍스트에 user가 올라가있어서 setName만 해줘도 더티체킹으로 인해서 저장되는 걸로 알고있습니다. 그러면 userRepository.save (user);를 따로 해줘야하나요?

  • java
  • spring
  • spring-boot
  • jpa
kongminoo 댓글 2 좋아요 0 조회수 127

빌드 오류

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예 /아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] 여기에 질문 내용을 윈도우에서 실행했는데 이런식으로 나옵니다. ㅠㅠ 왜이런건가요?

  • java
  • spring
  • mvc
  • spring-boot
댓글 1 좋아요 0 조회수 344

em.flush() 차이에 대해 궁금한 점이 있습니다.

미해결

실전! 스프링 데이터 JPA

Optioanl<Member> findById(Long id)와 @Query("select m from Member m where m.id = :id) Optional<Member> findByid(@Param("id") Long id) 가장 위의 코드는 spring data jpa를 이용해서 작성했기 때문에 em.flush()가 호출될 때 바로 일어나지않고 아래의 코드는 jpql로 작성했기 때문에 로직 호출 시에 바로 em.flush()가 발생하는 거 맞나요?

  • java
  • spring
  • spring-boot
  • jpa
kongminoo 댓글 1 좋아요 0 조회수 114

강사님 질문이요. 평균적으로 하루에 얼마나 강의에 시간을 투자하시나요?

해결됨

김영한의 실전 자바 - 중급 2편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 말 그대로 입니다. 영한님은 하루에 자바 강의를 찍을 때 평균적으로 하루에 시간을 얼마나 투자하시나요? ('어레이 리스트 에서 링크드리스트로 변환 할때 이런 것은 얼마나 생각을 해야지 나오지?(11:30~40)'라는 생각이 들어서 질문을 합니다.)

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
생각하는자 댓글 1 좋아요 0 조회수 276

fetchOne 반환 값 / 실무 Exception

미해결

실전! Querydsl

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] fetchOne()은 결과 값이 없을 경우 null을 반환 하는데 왜 Optional<Member>로 반환 하지 않나요? fetchOne()은 member가 없을 경우 null 반환 합니다. 결과 값을 Optional.ofnullable()로 감싸서 반환 후 서비스 계층에서 null 이면 안될 경우 RutTimeException을 상속한 커스텀 Exception을 발생 시키고 advice에서 처리 하는게 맞나요?

  • java
  • jpa
조희제 댓글 1 좋아요 0 조회수 236

파사드 패턴에 대해 질문이 있습니다.

해결됨

떠먹여주는 객체지향 디자인 패턴 - by 얄코

안녕하세요 강의 잘 보고 있습니다. 파사드 패턴에 대해 질문이 있습니다. 얄코님이 올려주신 예시에선 다음과 같이 두 상황이 나온다고 이해했습니다. 다양한 서브 시스템을 파사드 클래스로 조합해 하나의 새로운 로직을 만듦. 여러 서브 시스템을 생성시키고 세부 로직을 파사드 클래스에 위임. 1번의 경우는 일종의 추상화로 이해하였으며, 2번의 경우 서브 시스템에 대한 의존성 주입을 파사드 클래스에 위임 및 세부적인 로직을 캡슐화하는데 의의를 두었다고 이해했습니다. 만약 의존성 주입은 자동으로 이루어지는 3-layer 아키텍쳐에서 파사드 패턴을 도입할 경우 이미 service 레이어에서 내부 로직에 대해 캡슐화가 되었으므로 다양한 서브시스템을 파사드 클래스로 조합하는 것(ex. 1번)에만 집중하면 될까요?

  • java
  • 객체지향
  • 디자인-패턴
이상민 댓글 3 좋아요 0 조회수 493

외부에서 private subnet 으로 HTTP 요청이 안되는 문제점

미해결

AWS로 쉽고 빠르지만 아주 견고한 서버 환경을 구축하는 방법

개선할 부분에 Private Subnet 으로 이동한 EC2 는 외부에서 HTTP 요청을 할 수 없게 되었다. 가 문제점으로 언급해주셨는데, 외부에서 DDoS 및 트래픽 변조 공격이 들어올 수 있기 때문에 ec2 를 Private Subnet 으로 이동해서 외부에서의 공격(HTTP 요청 포함)을 막은 것이 아니었나요? 그리고 HTTP 요청은 Public Subnet 을 통해 들어가서 Private Subnet 으로 통신해주는 흐름 아닌가요? 어떤 것이 문제점이 되는 건지 헷갈리네요..

  • aws
  • docker
  • msa
  • container
  • ecs
  • fargate
rjf1138 댓글 2 좋아요 1 조회수 244

curl -XGET 'localhost/health_check' 명령어에 실패합니다.

미해결

AWS로 쉽고 빠르지만 아주 견고한 서버 환경을 구축하는 방법

다른 질문 글을 보고, NAT Gateway 생성 및 Route Table 도 재설정해주었지만, 여전히 curl -XGET 'localhost/health_check' 명령어에 실패합니다. cat /var/log/cloud-init-output.log 실행시에 아래와 같은 log 가 찍힙니다. git 과 JDK, git clone 모두 진행이 제대로 되지 않는 것으로 보이는데 원인을 잘 모르겠습니다. User Data 에 스크립트는 제대로 작성되어 있는 것을 확인했습니다. Cloud-init v. 22.2.2 running 'modules:config' at Tue, 22 Oct 2024 14:53:05 +0000. Up 7.18 seconds. Cloud-init v. 22.2.2 running 'modules:final' at Tue, 22 Oct 2024 14:53:06 +0000. Up 7.95 seconds. Amazon Linux 2023 repository 0.0 B/s | 0 B 06:00 Errors during downloading metadata for repository 'amazonlinux': - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/core/mirrors/2023.6.20241010/aarch64/mirror.list [Connection timeout after 30001 ms] - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/core/mirrors/2023.6.20241010/aarch64/mirror.list [Connection timeout after 30002 ms] Error: Failed to download metadata for repo 'amazonlinux': Cannot prepare internal mirrorlist: Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/core/mirrors/2023.6.20241010/aarch64/mirror.list [Connection timeout after 30001 ms] Amazon Linux 2023 Kernel Livepatch repository 0.0 B/s | 0 B 06:00 Errors during downloading metadata for repository 'kernel-livepatch': - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Failed to connect to al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com port 443 after 30001 ms: Timeout was reached] - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Failed to connect to al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com port 443 after 30000 ms: Timeout was reached] - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Failed to connect to al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com port 443 after 30002 ms: Timeout was reached] - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Connection timeout after 30002 ms] - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Connection timeout after 30000 ms] - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Connection timeout after 30001 ms] Error: Failed to download metadata for repo 'kernel-livepatch': Cannot prepare internal mirrorlist: Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Connection timeout after 30000 ms] Ignoring repositories: amazonlinux, kernel-livepatch Error encountered while trying to retrieve release update information: Unable to retrieve release info data. Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/core/releasemd.xml [Connection timeout after 30001 ms] Dependencies resolved. Nothing to do. Complete! Amazon Linux 2023 repository 0.0 B/s | 0 B 06:00 Errors during downloading metadata for repository 'amazonlinux': - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/core/mirrors/2023.6.20241010/aarch64/mirror.list [Connection timeout after 30000 ms] - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/core/mirrors/2023.6.20241010/aarch64/mirror.list [Connection timeout after 30001 ms] Error: Failed to download metadata for repo 'amazonlinux': Cannot prepare internal mirrorlist: Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/core/mirrors/2023.6.20241010/aarch64/mirror.list [Connection timeout after 30000 ms] Amazon Linux 2023 Kernel Livepatch repository 0.0 B/s | 0 B 06:00 Errors during downloading metadata for repository 'kernel-livepatch': - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Connection timeout after 30000 ms] - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Connection timeout after 30001 ms] Error: Failed to download metadata for repo 'kernel-livepatch': Cannot prepare internal mirrorlist: Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Connection timeout after 30001 ms] Ignoring repositories: amazonlinux, kernel-livepatch No match for argument: java-17-amazon-corretto-devel Error: Unable to find a match: java-17-amazon-corretto-devel Amazon Linux 2023 repository 0.0 B/s | 0 B 06:00 Errors during downloading metadata for repository 'amazonlinux': - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/core/mirrors/2023.6.20241010/aarch64/mirror.list [Connection timeout after 30002 ms] - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/core/mirrors/2023.6.20241010/aarch64/mirror.list [Connection timeout after 30001 ms] Error: Failed to download metadata for repo 'amazonlinux': Cannot prepare internal mirrorlist: Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/core/mirrors/2023.6.20241010/aarch64/mirror.list [Connection timeout after 30001 ms] Amazon Linux 2023 Kernel Livepatch repository 0.0 B/s | 0 B 06:00 Errors during downloading metadata for repository 'kernel-livepatch': - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Connection timeout after 30001 ms] - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Failed to connect to al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com port 443 after 30001 ms: Timeout was reached] - Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Connection timeout after 30002 ms] Error: Failed to download metadata for repo 'kernel-livepatch': Cannot prepare internal mirrorlist: Curl error (28): Timeout was reached for https://al2023-repos-ap-northeast-2-de612dc2.s3.dualstack.ap-northeast-2.amazonaws.com/kernel-livepatch/mirrors/al2023/aarch64/mirror.list [Connection timeout after 30001 ms] Ignoring repositories: amazonlinux, kernel-livepatch No match for argument: git Error: Unable to find a match: git /var/lib/cloud/instance/scripts/part-001: line 11: git: command not found /var/lib/cloud/instance/scripts/part-001: line 14: cd: aws-operation-prac: No such file or directory /var/lib/cloud/instance/scripts/part-001: line 17: ./gradlew: No such file or directory sudo: java: command not found 2024-10-22 15:31:09,338 - cc_scripts_user.py[WARNING]: Failed to run module scripts-user (scripts in /var/lib/cloud/instance/scripts) 2024-10-22 15:31:09,340 - util.py[WARNING]: Running module scripts-user (<module 'cloudinit.config.cc_scripts_user' from '/usr/lib/python3.9/site-packages/cloudinit/config/cc_scripts_user.py'>) failed Cloud-init v. 22.2.2 finished at Tue, 22 Oct 2024 15:31:09 +0000. Datasource DataSourceEc2. Up 2290.97 seconds Cloud-init v. 22.2.2 running 'init' at Tue, 22 Oct 2024 16:16:20 +0000. Up 5.11 seconds. 질문 글에 10000 자 이상으로 작성이 되지 않아 log 중 핵심되는 내용으로 추정되는 부분만 복붙했습니다.

  • aws
  • docker
  • msa
  • container
  • ecs
  • fargate
rjf1138 댓글 1 좋아요 0 조회수 243

@Transactional에 대해서 궁금합니다.

미해결

실전! 스프링 데이터 JPA

이전에 공부할 때 엔티티매니저에서 트랜잭션을 가져야 로직이 수행된다는 것을 알고 있었습니다. 그런데 이전에 JPA활용2편에 @Transactional을 따로 붙혀주지 않았는데 로직이 실행된걸로 기억하는데 @Service나 @Repository에 의해서 자동으로 트랜잭션이 걸리는 건가요?

  • java
  • spring
  • spring-boot
  • jpa
kongminoo 댓글 1 좋아요 0 조회수 136

동등 연산자 (==) 객체 비교 질문

미해결

김영한의 실전 자바 - 중급 1편

안녕하세요, 다름이 아니라 동등연산자에서 객체비교중 의문이 있어 질문드립니다. 아래 이미지에서 다른 객체 인스턴스 끼리는 동등연산 자체가 컴파일 에러나는데 이유가 무엇인가요? 동작은 해야 정상이 아닌가 싶은데,,, 다형적 참조가 가능한 객체끼리만 가능한가요?

  • java
  • 객체지향
트릴 댓글 1 좋아요 0 조회수 160

코틀린 컴파일에 대해서

미해결

더 자바, 코드를 조작하는 다양한 방법

자바, jvm, jdk 그리고 jre 강의에서 kotlinc 명령어로 .kt 파일을 컴파일하시는걸 봤는데요, 코틀린 컴파일러는 jdk에 포함되어 있는 것이 아니고 따로 설치해야 하는게 맞을까요? jre는 java의 실행환경을 제공하고, jdk는 개발 도구 키트를 제공해서 java를 컴파일하는 javac 등의 명령어? 툴?은 jdk에 포함되어 있다고 강의 교안에 적혀있는데 그럼 코틀린의 컴파일러는 추가적으로 설치가 필요한지, 아니면 뭔가 방법이 있는지 궁금합니다. 우선 컴파일하면 바이트 코드가 되기 때문에 런타임에 필요한 라이브러리만 포함하여 패키징하면 jre에서 실행할 수 있다는 것은 이해했습니다!

  • java
  • kotlin
  • jdk
  • jvm
이찬미 댓글 1 좋아요 0 조회수 257

직접 구현하는 배열 리스트1- 시작의 MyArrayListV1 구현 질문이요

미해결

김영한의 실전 자바 - 중급 2편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 직접 구현하는 배열 리스트1- 시작의 MyArrayListV1 구현문제를 예외 처리하고 싶은데 아무리 해도 안돼는데 해결책좀 try { list.add("f"); System.out.println(list); } catch (ArrayIndexOutOfBoundsException e) { System.out.println("배열의 범위를 벗어났습니다"); System.out.println("예외 발생 위치: " + e.getMessage()); e.printStackTrace(System.out); } 그리고 아래 MyArrayListV1에 이렇게 작성하면 되긴 돼는데 저는 유지보수를 위해서 try~catch를 하고 싶거든요. 그래서이렇게 질문 남겨요 public void add(Object e) { if (size >= elementData.length) { // 배열이 가득 찼는지 체크 throw new ArrayIndexOutOfBoundsException("용량을 초과했습니다. 현재 크기: " + size + ", 최대 용량: " + elementData.length); } elementData[size] = e; size++; }

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
justcoin 댓글 1 좋아요 0 조회수 138

트랜잭션 질문

미해결

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

public class OrderApiController { @GetMapping("/api/v1/orders") public List<Order> orderV1() { List<Order> all = orderRepository.findAllByString(new OrderSearch()); for (Order order : all) { order.getMember().getName(); order.getDelivery().getAddress(); List<OrderItem> orderItems = order.getOrderItems(); orderItems.forEach(o -> o.getItem().getName()); } return all; } } public class OrderRepository{ public List<Order> findAllByString(OrderSearch orderSearch) { String jpql = "select o from Order o join o.member m"; boolean isFirstCondition = true; //주문 상태 검색 if (orderSearch.getOrderStatus() != null) { if (isFirstCondition) { jpql += " where"; isFirstCondition = false; } else { jpql += " and"; } jpql += " o.status = :status"; } ... 트랜잭션을 따로 붙히지 않았는데 상관없는건가요? List<Order> all = orderRepository.findAllByString(new OrderSearch()); 이 때 연관관계매핑되어 있는 객체들은 지연로딩에 의해 프록시로 존재하고 for (Order order : all) { order.getMember().getName(); order.getDelivery().getAddress(); List<OrderItem> orderItems = order.getOrderItems(); orderItems.forEach(o -> o.getItem().getName()); } 이 때 강제호출 되어서 쿼리가 나가는 게 맞나요? orderRepository.findAllByString에서 repository에서 작업이 마쳐서 트랜잭션이 커밋되어서 영속성 컨텍스트에는 아무값이 없을 거 같은데 컨트롤러에서 리턴하기 전까지 하나의 트랜잭션 안에서 작동이 이뤄지는 건가요? 트랜잭션이 언제 시작하고 언제 종료되는 지 궁금합니다

  • java
  • spring
  • spring-boot
  • jpa
kongminoo 댓글 2 좋아요 0 조회수 139

인기 태그

인프런 TOP Writers

주간 인기글