inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

[섹션11] 웹사이트 웹뷰에 띄우기 질문입니다.

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

안녕하세요 🙂 프로그래밍 초보이지만, 플러터 강의 덕분에 즐겁게 공부하고 있습니다. 아래 코드에서, https://blog.codefactory.ai 로 Uri를 연결했더니, 코드팩토리님 블로그로 잘 연결되는데요, final homeUrl = Uri.parse('https://blog.codefactory.ai'); class HomeScreen extends StatelessWidget { WebViewController controller = WebViewController()..loadRequest(homeUrl); HomeScreen({super.key}); 제가 처음에 오타로 https를 http로 입력했더니, 오류가 발생하더라구요. 혹시 원인을 설명해주실 수 있나요?ㅜㅜ

  • flutter
  • 클론코딩
하은 댓글 1 좋아요 0 조회수 165

네임드락 부모에(facade) 트랜잭션이 없을때

미해결

재고시스템으로 알아보는 동시성이슈 해결방법

자식 service 메서드에 Propagation.REQUIRES_NEW속성은 그럼 필요 없는건가요? public class NamedLockStockFacade { private final LockRepository lockRepository; private final StockService stockService; public void decrease(Long id, Long quantity) { try { lockRepository.getLock(id.toString()); stockService.decrease(id, quantity); } finally { lockRepository.releaseLock(id.toString()); } } } ----------- @Transactional public void decrease(Long id, Long quantity) { Stock stock = stockRepository.findById(id).orElseThrow(); stock.decrease(quantity); stockRepository.saveAndFlush(stock); } 이렇게 자식에만 트랜잭션이 걸려있으면, 커밋이 다되고 lock 풀리는거아니에요? 굳이 부모에 트랜잭션 붙이고 자식트랜잭션에서 NEW하는 이유가 있나요?

  • java
  • spring
  • 동시성
donkey 댓글 1 좋아요 0 조회수 180

Notion 자료 오타를 발견했습니다!

해결됨

Flutter 앱 개발 실전

이해가 잘 되게 설명해주시고, 강의 자료도 너무 잘 정리해주셔서 강의 너무 잘 듣고 있습니다 😃 강의 자료에서 오타를 찾은 것 같아 전달드립니다~ Dart -> 04.JSON & 직렬화 -> 직렬화 & 역직렬화 하단 직렬화, 역직렬화 코드에 "철수" 가 "철수 로 큰따옴표 하나가 입력안된 것 같아요! 강의 제공해주셔서 너무 감사합니다!

  • flutter
  • serialization
  • deserialization
유승주 댓글 1 좋아요 1 조회수 126

깃 push가 안되서 ssh를 한참해메고 있습니다. ㅠㅠ

해결됨

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

The authenticity of host ' github.com (20.200.245.247)' can't be established. ED25519 key fingerprint is SHA256:+DiY3wvvV 위와같은 문구가 뜨고 안되네요. ㅠㅠ

  • react
  • 인터랙티브-웹
  • 클론코딩
  • next.js
  • tailwind-css
  • zustand
foxball 댓글 1 좋아요 1 조회수 179

unlock()을 호출 했을 때

미해결

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

ReentrantLock에서 lock.unlock()을 호출하면, 대기 중인 스레드들이 락을 획득하려고 서로 경쟁하게 됩니다. 제가 이해한 바로는, unlock이 호출된 후 스레드들중 락을 획득한 한개의 스레드는 RUNNABLE 상태로 전환되고, 나머지 락을 획득하지 못한 스레드들은 다시 WAITING 상태로 돌아가는 것이라고 알고 있습니다. 이 과정에서 스레드들이 경쟁하는 순간의 상태가 정확히 어떻게 되는지 궁금합니다. 경쟁순간에는 락을 획득하려는 스레드들 모두 RUNNABLE 상태인가요?

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

렌더링

미해결

Next + React Query로 SNS 서비스 만들기

안녕하세요. useQuery로 가져온 data가 console로 찍어보면 두번찍히는데 왜 렌더링이 두번도는지 알 수 있을까요?

  • react
  • next.js
  • react-query
  • next-auth
  • msw
inflearn3 댓글 1 좋아요 0 조회수 105

pushNamedAndRemoveUntil 의 작동원리와 오류나는 이유가 궁금합니다.

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

안녕하세요! 강의 잘 듣고 있습니다. Q1. pushNamedAndRemoveUntil 의 작동순서? 원리가 제가 생각한게 맞는지 확신이 들지 않아서 여쭤봅니다. 명명된 라우트가 푸시된다. 라우트 스택 중 가장 최근부터 순차적으로 조건문에 따라 false가 반환되는 라우트는 스택에서 삭제된다. 따라서 push됐던 라우트에서 pop을 하게 되면 라우트 스택에 남아있던 라우트로 이동한다. 이게 맞나요? Q2. 라우트 스택의 가장 최근부터 순차적으로 삭제되는게 맞다면 RemoveUntil 이라는 이름을 보고 삭제되지 않는 페이지가 있다면 거기서 끝나는건가? 라는 생각에 HomeScreen이 아닌 route_one_screen이 삭제되지 않는 조건문을 작성했습니다. route.settings.name == '/'; 로 하셨던 것을 route.settings.name == '/one' 으로 바꿔봤는데 push됐던 route_three_screen이 pop되면 route_one_screen이 나올줄 알았는데 그냥 검은 화면만 나옵니다. 무엇이 문제였던 걸까요..? 그리고 home_screen도 삭제가 되었을까요? import 'package:flutter/material.dart'; import 'package:navigation/layout/default_layout.dart'; import 'package:navigation/screen/route_three_screen.dart'; class RouteTwoScreen extends StatelessWidget { const RouteTwoScreen({super.key}); @override Widget build(BuildContext context) { final arguments = ModalRoute.of(context)?.settings.arguments; return DefaultLayout( title: 'RouteTwoScreen', children: [ Text( arguments.toString(), textAlign: TextAlign.center, ), OutlinedButton( onPressed: () { Navigator.of(context).pop(); }, child: Text('Pop'), ), OutlinedButton( onPressed: () { Navigator.of(context).pushNamed( '/three', arguments: 111111, ); }, child: Text('Push Route Three'), ), OutlinedButton( onPressed: () { /// [HomeScreen, RouteOneScreen, RouteTwoScreen] /// push - [HomeScreen, RouteOneScreen, RouteTwoScreen, RouteThreeScreen] /// pushR - [HomeScreen, RouteOneScreen, RouteThreeScreen] Navigator.of(context).pushReplacement( MaterialPageRoute( builder: (BuildContext context) { return RouteThreeScreen(); }, settings: RouteSettings( arguments: 999, ), ), ); }, child: Text('Push Replacement'), ), OutlinedButton( onPressed: () { Navigator.of(context).pushReplacementNamed( '/three', arguments: 999, ); }, child: Text('Push Replacement Named'), ), OutlinedButton( onPressed: () { Navigator.of(context).pushNamedAndRemoveUntil( '/three', (route){ /// 만약에 삭제 할거면 (Route Stack) false 반환 /// 만약에 삭제를 안할거면 true 반환 return route.settings.name == '/one'; }, arguments: 999, ); }, child: Text('Push Named And Remove Until'), ), ], ); } }

  • flutter
  • 클론코딩
kut7728 댓글 1 좋아요 0 조회수 139

강의 내용 중복

해결됨

[플러터플로우] 실전! 앱 출시를 위한 끝장 노하우!

아래 두 강의 내용이 동일합니다. [인앱결제] 10. 플러터플로우-RevenueCat 연결 및 구현 [인앱결제] 11. iOS에서 인앱결제 테스트하기

  • flutter
  • no-code
  • supabase
  • flutterflow
SUNGSOON CHOI 댓글 1 좋아요 0 조회수 171

intellij JVM설정 질문

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 인텔리제이의 설정화면 두곳이 있습니다. 하나는 settings > build, Execution, Deployment > build Tools > Gradle > 맨 하단 Gradle JVM 다른 하나는 project Structure > project settings > project > sdk 위 두 곳은 어떤 차이점이 있는 것인지 알고싶습니다. 둘다 JDK경로를 지정하는 것처럼 보이는데 Dependency requires at least JVM runtime version 17 에러를 마주했을 때 후자에서 해결을 해보려고 해도 해결이 안됐었습니다.

  • java
  • spring
  • mvc
  • spring-boot
창신동 장첸 댓글 1 좋아요 0 조회수 459

build.gradle에 queryDSL 설정이 잘되지 않습니다.

미해결

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

plugins { id 'java' id 'org.springframework.boot' version '3.3.1' id 'io.spring.dependency-management' version '1.1.5' } group = 'jpabook' version = '0.0.1-SNAPSHOT' java { toolchain { languageVersion = JavaLanguageVersion.of(17) } } //롬복 셋팅 configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.boot:spring-boot-devtools' implementation 'junit:junit:4.13.1' implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.1' implementation 'org.springframework.boot:spring-boot-starter-validation' implementation 'com.fasterxml.jackson.datatype:jackson-datatype-hibernate5' implementation 'javax.persistence:javax.persistence-api:2.2' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' //test 롬복 testImplementation 'org.springframework.boot:spring-boot-starter-test' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' //Querydsl 추가 implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta' annotationProcessor "com.querydsl:querydsl-apt:${dependencyManagement.importedProperties['querydsl.version']}:jakarta" annotationProcessor "jakarta.annotation:jakarta.annotation-api" annotationProcessor "jakarta.persistence:jakarta.persistence-api" } tasks.named('test') { useJUnitPlatform() jvmArgs '-Xshare:off' // JVM 아규먼트 설정 } clean { delete file('src/main/generated') } 이렇게 설정해둔 상태인데 gradle을 다시로드했음에도 other에 compilequerydsl 설정이 생기지 않는 상황이고, 다른방식으로 설정도 했었는데, 그때는 또 우측 gradle의 other에 compileQeurydsl 설정이 보여서 설정을 진행했고 프로젝트 generated 디렉토리가 생성되긴 했지만, generated 디렉토리 하위 파일들이 보이지 않습니다. 어떻게 해결할 수 있을까요? 커뮤니티의 내용들을 다 참고했지만 되지 않네요..

  • java
  • spring
  • spring-boot
  • jpa
  • querydsl
lib32 댓글 2 좋아요 1 조회수 985

[기본형과 참조형 문제풀이] 코드에 관한 질문이 있습니다.

해결됨

김영한의 실전 자바 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요! 항상 선생님께서 진행하시는 문제 풀이를 수강한 이후에, 혼자 좀 더 나은 방식으로 만들 수는 없을까 고민을 하는데요, Method를 배우고 난 이후로, 코드를 대부분 Method로 넘겨서 작성하다 보니 '기능을 전부 Method로 넘겨서 작성하는 것이 진짜 잘 작성한 코드가 맞을까?' 하는 의문이 들었습니다. 아래는 마지막 문제를 제가 코딩한 내용인데요, 두 가지 질문이 있습니다. 실무적인 관점과 비교해서 아래의 코드처럼 작성하는 방식(모든 기능을 Method에 집약한 방식)이 괜찮은 방식인가요? 코드의 개선점이 있다면 어떤 점을 개선하면 좋을까요? 항상 좋은 강의 해주셔서 감사합니다! package ref.ex; import java.util.Scanner; public class ProductOrderMain2 { public static void main(String[] args) { int num = orderCount(); ProductOrder[] orders = new ProductOrder[num]; createOrder(orders); orderPrint(orders); } static int orderCount() { Scanner scan = new Scanner(System.in); System.out.println("-----------------------------------"); System.out.println(" 상품 등록 시스템 "); System.out.println("-----------------------------------"); System.out.print("입력할 주문의 개수를 입력하세요: "); int num = scan.nextInt(); System.out.println(); return num; } static void createOrder(ProductOrder[] orders) { Scanner scan = new Scanner(System.in); for(int i = 0; i < orders.length; i++) { orders[i] = new ProductOrder(); System.out.println((i+1) + "번째 주문 정보를 입력하세요"); System.out.print("상품명: "); orders[i].productName = scan.nextLine(); System.out.print("가격: "); orders[i].price = scan.nextInt(); System.out.print("수량: "); orders[i].quantity = scan.nextInt(); scan.nextLine(); System.out.println(); } } static void orderPrint(ProductOrder[] orders) { int total = 0; for(ProductOrder P : orders) { System.out.println("상품명: " + P.productName + ", 가격: " + P.price + ", 수량: " + P.quantity); total += (P.price * P.quantity); } System.out.println("총 결제금액: " + total); } }

  • java
  • 객체지향
jonghyeok097 댓글 1 좋아요 1 조회수 164

Section 10. 동전교환 반례

미해결

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

3 2 3 5 1 테스트케이스를 위와 같이 입력할 경우 정답 코드대로 하면 Intger.MAX_VALUE인 2147483647이 답으로 나올 것 같아서요. 이렇게 추가코드를 넣어야 하는것 아닌지 궁금합니다. import java.util.*; class Main{ static int n, m; static int[] dy; public int solution(int[] coin){ Arrays.fill(dy, Integer.MAX_VALUE); dy[0]=0; for(int i=0; i<n; i++){ for(int j=coin[i]; j<=m; j++){ dy[j]=Math.min(dy[j], dy[j-coin[i]]+1); } } /* 추가코드 for (int i = 0; i <= m; i++) { if (dy[i] == Integer.MAX_VALUE) { dy[i] = 0; } } */ return dy[m]; } public static void main(String[] args){ Main T = new Main(); Scanner kb = new Scanner(System.in); n=kb.nextInt(); int[] arr=new int[n]; for(int i=0; i<n; i++){ arr[i]=kb.nextInt(); } m=kb.nextInt(); dy=new int[m+1]; System.out.print(T.solution(arr)); } }

  • java
  • 코딩-테스트
donny9292 댓글 1 좋아요 0 조회수 119

강의에서의 회원가입 테스트를 JUnit5 방식으로 바꾸면 이게 맞을까요?

해결됨

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

@ExtendWith(SpringExtension.class) @SpringBootTest @Transactional class MemberServiceTest { @Autowired MemberService memberService; @Autowired MemberRepository memberRepository; @Test void 회원가입() throws Exception { //given Member member = new Member(); member.setName("kim"); //when Long savedId = memberService.join(member); Member joinedMember = memberRepository.findOne(savedId); //then assertThat(member).isEqualTo(joinedMember); } 이렇게 진행하면 될까요?

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
댓글 2 좋아요 0 조회수 658

혹시 추가적인 강의는 아직 소식이 없는건가요?

해결됨

Flutter 앱 개발 실전

강사님의 강의를 더 보고 싶은데 예정된 강의가 없나요 ㅠㅠ? 클린아키텍쳐와 블록의 사용 등 다른 강의도 보고 싶은데 ㅠㅠ

  • flutter
김동혁 댓글 1 좋아요 1 조회수 142

GenerationType.IDENTITY 의문점

미해결

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

[질문 내용] Long 으로 잡았을땐 db에 데이터가 들어가지는데 왜 String으로 하면 오히려 테이블이 사라지나요?

  • java
  • jpa
형종 댓글 2 좋아요 0 조회수 247

c언어 기출문제변형

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

36분45초. 출력값작성하는 문제입니다. X를 먼저 출력하면 기존의 20값이 출력되는게 아닌가요?? 순서상에서도 그렇구요.. 반영이 다된후에 X,Y값을 출력하는지 모르겠습니다.

  • python
  • java
  • c
  • 정보처리기사
고은채 댓글 1 좋아요 0 조회수 124

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

해결됨

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 링크 : https://drive.google.com/drive/folders/1VfZnK2GoZrg7pMOsahW0ERZVXFL_w_6X?usp=drive_link 강의를 듣다가 의문이 생겨서 질문 드립니다. 코드를 작성하여 table에 값들을 저장하고 이후에 update를 em.find()를 통해 하려하거나 그동안 저장했던 member값들을 em.createQuery하려할 때 모두 테이블 값이 초기화되면서 아무것도 값을 가져오지 못하는 상황이 발생하는데 설정 문제인지 계속 롤백이 되도록 되어있는 것인지 궁금하여 질문드립니다. 링크도 첨부하겠습니다

  • java
  • jpa
염경호 댓글 1 좋아요 1 조회수 326

yield()를 추가해도 무한반복은 계속해서 발생하지 않을까요?

미해결

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

안녕하세요. 강의 수강 중 궁금한 것이 있어 질문드립니다. MyPrinterV4에서 yield() 를 추가해도 인터럽트 되지 않은 상태에서 while문에서 무한 반복이 발생(성능저하의 근본 원인)하는 것은 V3와 동일하기 때문에 때문에 성능 향상이 있을까 싶습니다.

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
Jaesang Yoon 댓글 2 좋아요 1 조회수 255

address 질문

미해결

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

[질문 내용] 안녕하세요 영한님 질문이 있어서 올리게되었습니다. 다름이 아니라 address는 엔티티가 아닌 값타입이라고 하셨는데 주소를 수정하는개념이 아닌 회원 하나당 주소를 여러개를 가져야 할 경우 주소를 entity로 사용해도 되나요??

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
해톨 댓글 1 좋아요 0 조회수 144

연관관계 편의 메소드 사용 이후

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 연관 관계 편의 메소드 team의 addMember 혹은 member의 changeTeam 메소드를 사용한 이후로는 em.flsush와 em.clear 따로 호출하지 않아도 정상작동한다고 이해햇는데 맞을까요?

  • java
  • jpa
만릭 댓글 1 좋아요 0 조회수 183

인기 태그

인프런 TOP Writers

주간 인기글