inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

멀티 모듈 구성

미해결

토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1

안녕하세요 토비님, 우선 강의를 통해 제가 알고 있던 헥사고날 과 DDD(도메인 주도 설계) 에 대해 다시 한번 깊이 생각해볼 수 있는 소중한 경험이 되었습니다. 좋은 강의 만들어주셔서 정말 감사합니다. 토비님께서 생각하시는 헥사고날에, DDD 과 멀티 모듈 의 바람직한 설계에 대해 궁금해서 질문을 남기게 되었습니다. 여기서의 멀티 모듈은 우선 MSA 를 제외하고 순수 멀티 모듈을 통해 시스템을 설계를 한다는 것을 전제하고 있습니다. 가장 흔하게 보이는 멀티 모듈 구성의 패턴은 Storage (JPA), External (외부 Dependency), N 개의 서비스에 해당하는 Web Server 모듈 & 기타 등이 있는 것 같은데요. 멀티 모듈을 현 강의에서 보여주고 말씀해주시는 헥사고날과 DDD 와 결합했을 때, 어떻게 구성하면 좋을지 많은 생각이 들고 또한 현업에서 비슷한 고민을 하고 있어서 토비님의 생각이 궁금해 질문을 남기게 되었습니다. 감사합니다.

  • java
  • spring
  • spring-boot
  • jpa
  • 리팩터링
carrot.jung 댓글 2 좋아요 0 조회수 243

application.yaml 설정

미해결

죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.

프로젝트 수행시에 itemReader로 데이터 조회가 안된다면, application.yaml 설정에 data: mongodb: database: cyberops 추가해보세요~ 🤔

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
hongdae 댓글 2 좋아요 1 조회수 108

IntelliJ IDEA, Git 설치 및 스프링부트 설정

해결됨

[말 한마디로 뚝딱!] AI와 함께 나만의 수익화 웹사이트를 만드는 법

이런 오류가 뜨는데 이유가 뭘까요?

  • java
  • mysql
qhgus5459 댓글 2 좋아요 0 조회수 289

synchronized 사용

미해결

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

Client의 close()에 synchronized를 사용하는 것은 이해가 됐습니다. ReadHanlder, WriteHandler 양쪽에서 동시에 호출할 수 있기 때문이라고 생각하면 바로 이해되는데... ReadHandler, WriteHandler의 close()에는 어떤 이유로 동기화 처리를 하는건지 궁금합니다. (해당 스레드들은 Client에서만 접근되는게 아닌가요?) 그리고 모든 IO 스트림이 Client 클래스에서 관리되는데 굳이 핸들러에도 close()를 두신 이유가 궁금합니다!

  • java
  • 네트워크
  • 객체지향
티티티 댓글 2 좋아요 0 조회수 90

No suggestions; results might be incomplete during indexing 문제 (인덱싱 무한 실행..)

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 강의 따라하는데, indexing이 무한히 로드 중이여서 아래 문구와 같이 자동 import를 하고 싶어도 할 수가 없습니다 ㅠㅠ.. 구글링을 통해 invalidate cache 하고 restart 해보기 compiler>excludes에 해당 프로젝트 파일 제외시켜보기 appearance&behavior에서 sync기능 비활성화 시켜보기 ( https://eottabom.github.io/post/intellij-indexing/ 참고함) jdk 17로 잘 설정되어 있는지 등등 확인해보았지만 인덱싱이 무한히 실행되고 있어 어노테이션 임포트를 못하고 있습니다... 조언 부탁드리겠습니다! 😂 😂

  • java
  • intellij
김가은 댓글 1 좋아요 0 조회수 171

개인적인 호기심 질문인데요

미해결

토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1

도메인에 "속성과 행위가 모두 포함"되어야하는데 그러면 만약에 "행위" 자체가 "외부 의존"을 가져야만 하는 경우에는 이런 것은 어떻게 만드는 것이 좋을까요?

  • java
  • spring
  • spring-boot
  • jpa
  • 리팩터링
  • ddd
래셔널 댓글 2 좋아요 1 조회수 272

closed 플래그 변수 사용 이유

미해결

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

안녕하세요! SessionV6에서 closed 변수를 사용하는 이유를 모르겠습니다! 어차피 close();가 몇번이건 호출되어도 예외가 발생안할텐데 체크하는 이유가 뭔지 알고싶습니다!

  • java
  • 네트워크
  • 객체지향
티티티 댓글 2 좋아요 0 조회수 76

join 질문입니다.

미해결

김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성

thread1.join(); thread2.join(); 메인스레드 내에서 thread1,2를 join()을 하는데요. thread1.join()을 먼저 만났으니 메인 스레드는 thread1이 종료 될때까지 다음 코드를 실행하지 않을텐데요. 여기서 메인스레드가 thread1의 결과를 기다리는 것이므로 thread1,2는 무관하게 그대로 번갈아가며 실행 되는 것이 맞나요? CPU((코어)가 1개라고 가정했을때요. 그래서 메인은 thread1이 종료되고 결과를 기다릴뿐 thread1과 2의 종료 순서는 보장되지않는 것이 맞을까요? 따라서 thread2가 먼저 작업을 끝낸 실행일 때도 있을 수 있겠죠? 단지 메인이 thrad1의 결과를 먼저 받으려고 기다릴뿐인거죠?

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
yoon6669 댓글 1 좋아요 0 조회수 47

4.6강 초기 로딩 속도 케이스 비교

해결됨

기초부터 배우는 Next YTMusic 클론 코딩 (with next.js 14, UI 마스터)

4.6강 초기 로딩 속도 케이스 비교 세가지 케이스를 적어주셨는데 case1, case3이 같은 건가요? 제가 이해를 못한 건가 싶어서 세 번 돌려봤는데 같아 보여서요.

  • react
  • 인터랙티브-웹
  • 클론코딩
  • next.js
  • tailwindcss
  • zustand
보노보노 댓글 2 좋아요 0 조회수 104

애플리케이션 새 항목 추가

해결됨

[말 한마디로 뚝딱!] AI와 함께 나만의 수익화 웹사이트를 만드는 법

실행/디버그 구성하는 부분에서 갑자기 메인 클래스 부분이 jh로 변경되어 있고 파일 구조를 보면 jhApplication도 이미 생성되어 있는데 어떻게 하신건가요? 끊김제거 및 추가 설명 강의에서도 이 부분이 없습니다

  • HTML/CSS
  • java
  • mysql
  • php
  • ai-활용-(ax)
댓글 2 좋아요 0 조회수 102

모듈 facets jpa추가

미해결

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

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 17:13경 하신 설정이 최신 intellij와 스프링부트에서도 필요한 설정인가요? 어떤 기능을 하는 설정인지 궁금합니다. 2025년 기준 인텔리제이에서 확인할 수 없어 여쭙습니다.

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
JongYun Won 댓글 1 좋아요 0 조회수 108

섹션2 퀴즈 정답 이상함..( Docker 핵심구성요소가 아닌 것)

해결됨

React & FastAPI로 만드는 투표 커뮤니티 플랫폼: 결제 시스템으로 수익화까지!

섹션2 퀴즈에 Docker 핵심 구성요소가 아닌 것에서 답이 잘못 되어 있는 것 같네요. 해설은 Volume 이라고 하면서 막상 답은 Docker Container 를 선택해야 정답이라고 하는군요..

  • react
  • mysql
  • docker
  • rest-api
  • FastAPI
Edwards 댓글 1 좋아요 0 조회수 90

질문입니다.

해결됨

모르면 야근하는 문자 인코딩 완전 정복

안녕하세요 강사님, - Java 리플렉션 + 어노테이션 - JDBC 7월중에 오픈 예정이라고 들었습니다.. 언제 쯤 오픈 예정이신지 궁금합니다..

  • java
  • mysql
  • utf-8
  • endian
  • us-ascii
별다방 댓글 2 좋아요 0 조회수 74

@TestConfiguration 관련 설명과 실제 동작이 다른 부분이 있는 것 같습니다.

미해결

토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1

안녕하세요 토비님! 좋은 강의 정말 감사드립니다. @TestConfiguration 에 대한 설명을 해주신 부분 중에서 테스트 결과와 다른 부분이 있는 것 같아 확인차 질문 드립니다. <28. 회원 애플리케이션 서비스 테스트 (2)> 의 11:38에서 " @TestConfiguration 에 어떤 Bean을 정의하면 이게 우선이 되어 돌아갑니다." 라는 말씀을 해주셨는데요. 해당 말씀이 맞는지 테스트해 보기 위해, 현재의 강의 예제 코드에서 @TestConfiguration 이 붙은 클래스의 PasswordEncoder 를 정의한 Bean 메서드의 이름을 testPasswordEncoder로 변경하고 테스트를 돌려 보니 아래와 같은 오류가 발생하였습니다. ( EmailSender 의 경우 DummyEmailSender에 @FallBack 이 붙어 있어서 @TestConfiguration 의 EmailSender Bean 메서드의 이름을 다르게 구성하더라도 테스트는 정상적으로 동작합니다.) @TestConfiguration 이 정의되었다고 해서 우선순위로 동작하지는 않는 것으로 보이고, 기존 Bean의 적용 우선순위에 따라 @TestConfiguration 에서 정의한 메서드 이름과, 이를 사용하는 곳의 필드 이름이 동일한 경우 해당 Bean을 찾아서 동작하는 것으로 보였습니다. 혹시 제가 잘못 이해하고 있거나 보완이 필요한 부분이 있다면 편히 말씀 부탁드립니다. 확인 부탁드립니다. 감사합니다 :)

  • java
  • spring
  • spring-boot
  • jpa
  • 리팩터링
  • ddd
호준 댓글 1 좋아요 2 조회수 200

eas update 시 build에서 채널이 안보임

해결됨

React Native with Expo: 제로초에게 제대로 배우기

✘ chaejinjeong 😝  ~/Desktop/lukas/Study/reactnative/zerocho/threads  ↱ main ±  eas update --channel development --message "fix: apiUrl" [expo-cli] env: load .env [expo-cli] env: export KAKAO_NATIVE_KEY [expo-cli] Starting Metro Bundler [expo-cli] iOS ./index.ts ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░ 99.9% (1879/1883) [expo-cli] Android ./index.ts ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░ 99.9% (1886/1886) [expo-cli] iOS ./index.ts ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░ 99.9% (1884/1884) [expo-cli] Android ./index.ts ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░ 99.9% (1886/1886) [expo-cli] Android Bundled 8190ms index.ts (1886 modules) [expo-cli] iOS ./index.ts ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░ 99.9% (1884/1884) [expo-cli] Android ./index.ts ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░ 99.9% (1886/1886) [expo-cli] iOS ./index.ts ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░ 99.9% (1884/1884) [expo-cli] iOS Bundled 12572ms index.ts (1884 modules) [expo-cli] iOS ./index.ts ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░ 99.9% (1884/1884) [expo-cli] Creating asset map [expo-cli] [expo-cli] › Assets (54): [expo-cli] assets/images/avatar.png (17.5 kB) [expo-cli] assets/images/react-logo.png (3 variations | 13.9 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/AntDesign.ttf (70.3 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/Entypo.ttf (66.2 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/EvilIcons.ttf (13.5 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/Feather.ttf (56.2 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/FontAwesome.ttf (166 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf (134 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf (33.7 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf (203 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/FontAwesome6_Brands.ttf (209 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/FontAwesome6_Regular.ttf (68 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/FontAwesome6_Solid.ttf (424 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/Fontisto.ttf (314 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/Foundation.ttf (57 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/Ionicons.ttf (443 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf (1.15 MB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/MaterialIcons.ttf (357 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/Octicons.ttf (49.4 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/SimpleLineIcons.ttf (54.1 kB) [expo-cli] node_modules/@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/Zocial.ttf (25.8 kB) [expo-cli] node_modules/@react-navigation/elements/lib/module/assets/back-icon-mask.png (653 B) [expo-cli] node_modules/@react-navigation/elements/lib/module/assets/back-icon.png (8 variations | 359 B) [expo-cli] node_modules/@react-navigation/elements/lib/module/assets/clear-icon.png (4 variations | 425 B) [expo-cli] node_modules/@react-navigation/elements/lib/module/assets/close-icon.png (4 variations | 235 B) [expo-cli] node_modules/@react-navigation/elements/lib/module/assets/search-icon.png (7 variations | 592 B) [expo-cli] node_modules/expo-router/assets/arrow_down.png (9.46 kB) [expo-cli] node_modules/expo-router/assets/error.png (469 B) [expo-cli] node_modules/expo-router/assets/file.png (138 B) [expo-cli] node_modules/expo-router/assets/forward.png (188 B) [expo-cli] node_modules/expo-router/assets/pkg.png (364 B) [expo-cli] node_modules/expo-router/assets/sitemap.png (465 B) [expo-cli] node_modules/expo-router/assets/unmatched.png (4.75 kB) [expo-cli] [expo-cli] › android bundles (2): [expo-cli] _expo/static/js/android/index-76e11ae11c34c3503a6dbd90ed0b7a03.hbc (5.82 MB) [expo-cli] _expo/static/js/android/index-76e11ae11c34c3503a6dbd90ed0b7a03.hbc.map (14.5 MB) [expo-cli] [expo-cli] › ios bundles (2): [expo-cli] _expo/static/js/ios/index-4cdfeb96d45c0edbe3d45931022e8005.hbc (5.82 MB) [expo-cli] _expo/static/js/ios/index-4cdfeb96d45c0edbe3d45931022e8005.hbc.map (14.5 MB) [expo-cli] [expo-cli] › Files (2): [expo-cli] assetmap.json (25.4 kB) [expo-cli] metadata.json (6.42 kB) [expo-cli] [expo-cli] Exported: dist ✔ Exported bundle(s) ✔ Uploaded assetmap.json ⠇ Uploading (0/56)(node:12056) [DEP0044] DeprecationWarning: The util.isArray API is deprecated. Please use Array.isArray() instead. (Use node --trace-deprecation ... to show where the warning was created) ✔ Uploaded 2 app bundles ✔ Uploading assets skipped - no new assets found ℹ 50 iOS assets, 50 Android assets (maximum: 2000 total per update). Learn more about asset limits ✔ Computed project fingerprints ✔ Published! Branch development Runtime version 1.0.0 Platform android, ios Update group ID 36193c9d-e3cb-43b3-abb0-1b0a945b68af Android update ID 4c505558-7e8e-4837-89eb-67c40f4d84ce iOS update ID d1473ce0-3b64-4d6a-a907-c14cb46ac87b Message fix: apiUrl Commit 53e7e483149d3a1c11158dc6d82e1d275d1817dd* EAS Dashboard https://expo.dev/accounts/lukasdiego/projects/threads/updates/36193c9d-e3cb-43b3-abb0-1b0a945b68af No compatible builds found for the following fingerprints: iOS fingerprint: 0ccba201890a2a4b134bfc3a01a91979c8c32e83 URL : https://expo.dev/accounts/lukasdiego/projects/threads/fingerprints/0ccba201890a2a4b134bfc3a01a91979c8c32e83 Android fingerprint: 676271bcdf365731eeac1b2652140fffb81ea64f URL : https://expo.dev/accounts/lukasdiego/projects/threads/fingerprints/676271bcdf365731eeac1b2652140fffb81ea64f chaejinjeong 😝  ~/Desktop/lukas/Study/reactnative/zerocho/threads  ↱ main ±  eas update 는 된 것 같은데 Builds에서는 안보이네요 업데이트가 잘 못 된걸까요 ? 우선 commit들은 확인이 됩니다.

  • react
  • react-native
  • 하이브리드-앱
  • typescript
  • expo
정채진 댓글 1 좋아요 0 조회수 129

orbit으로 install 후 npm run android에서 에러

미해결

React Native with Expo: 제로초에게 제대로 배우기

Error: adb: failed to install /Users/chaejinjeong/Desktop/lukas/Study/reactnative/zerocho/threads/android/app/build/outputs/apk/debug/app-debug.apk: Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE: Existing package com.lotto.threads signatures do not match newer version; ignoring!] 현재 npm run android 시 이런 에러를 겪고 있습니다.. 혹시 어떤게 잘 못 된걸까요 ? 앱을 삭제했습니다 orbit으로 다시 instsall 했습니다

  • react
  • react-native
  • 하이브리드-앱
  • typescript
  • expo
정채진 댓글 2 좋아요 0 조회수 118

eas update:configure

미해결

React Native with Expo: 제로초에게 제대로 배우기

eas configure 성공하려면 app.config.js 가 아니라 app.json으로 있어야하나요 ?

  • react
  • react-native
  • 하이브리드-앱
  • typescript
  • expo
정채진 댓글 3 좋아요 0 조회수 135

distinct 질문입니다.

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

23:20분에서 distinct를 사용하면 같은 식별자를 가진 엔티티를 제거한다고 하시는데 여기서 같은 식별자에서 식별자가 어떤걸 말하는건가요? id(pk)인가요? 그런데 id(pk)가 같을 수는 없을 것 같은데..

  • java
  • jpa
yoon6669 댓글 1 좋아요 0 조회수 102

JobLauncherTestUtils 의존성 주입

해결됨

죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.

킬구형, 테스트 할 때 JobLauncherTestUtils 빈을 주입받는 부분에서 궁금한 게 있어. @Autowired private JobLauncherTestUtils jobLauncherTestUtils; spring batch 테스트를 할 때 JobLauncherTestUtils 을 AutoWired 를 사용해서 필드 주입을 받으면 테스트가 잘 동작하는데, @RequiredArgsConstructor class InFearLearnStudentsBrainWashJobConfigTest { private final JobLauncherTestUtils jobLauncherTestUtils; 생성자 주입으로 받으려고 하면 아래처럼 에러가 나는 이유가 뭘까? No ParameterResolver registered for parameter [final org.springframework.batch.test.JobLauncherTestUtils jobLauncherTestUtils] in constructor ~~ 그리고 AutoWired 로 필드 주입을 받으면 동작은 잘 하지만, IDE에서 Could not autowire. No beans of 'JobLauncherTestUtils' type found. 이렇게 빨간 줄이 뜨는 건 왜일까? 인터넷 서칭해봐도 플러그인 설치를 통한 해결 방법은 있지만 해답은 못 찾았고, 지피티 설명은 이해가 안돼서 여기에 물어봐. 미리 고마워!

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
자전거 댓글 1 좋아요 1 조회수 194

MODULE_NOT_FOUND 오류

해결됨

React, Node.js, MongoDB로 만드는 나만의 회사 웹사이트: 완벽 가이드

code: 'MODULE_NOT_FOUND', requireStack: [ 'C:\\Users\\CompanyWebsite\\backend\\index.js' ] } Node.js v22.17.0 [nodemon] app crashed - waiting for file changes before starting... app . use ( "/api/auth" , userRoute ); 라우트 구성 후 thunder client로 apt 테스트 시 발생하는 오류입니다.

  • HTML/CSS
  • javascript
  • react
  • node.js
  • mongodb
yosemyti 댓글 3 좋아요 0 조회수 184

인기 태그

인프런 TOP Writers

주간 인기글