inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

stateful 상태관리에서

해결됨

Flutter 앱 개발 실전

stateful 상태관리 수업에서 store위젯을 stateless -> stateful로 바꿔 봤습니다 생성자 body에도 print()로 간단히 출력해보고 initState와 dispose도 추가해봤구요 아래 코드입니다. import 'package:flutter/material.dart'; import 'package:flutter_app/common/product.dart'; import 'package:flutter_app/common/product_tile.dart'; class Store extends StatefulWidget { //statelessdptj -> stateful로 바꿈 Store({ super.key, required this.cartProductList, required this.onPressed, }){ print(key); //추가 print(cartProductList.length); //추가 } /// 카트에 담긴 상품 목록 final List<Product> cartProductList; /// 클릭 이벤트 final void Function(Product product) onPressed; @override State<Store> createState() { print(key); print(cartProductList.length); return _StoreState(); } } class _StoreState extends State<Store> { @override void initState(){ //추가 super.initState(); print("init"); } @override void dispose(){ //추가 print("dispose"); super.dispose(); } @override Widget build(BuildContext context) { print("store build"); //추가 return Scaffold( body: ListView.builder( itemCount: storeProductList.length, itemBuilder: (context, index) { Product product = storeProductList[index]; return ProductTile( product: product, isInCart: widget.cartProductList.contains(product), onPressed: widget.onPressed, ); }, ), ); } } 결과를 보니 버튼을 클릭할 때 마다 생성자 바디가 호출되고 있는데 , state는 build함수만 호출되고 있습니다. 제가 궁금한 것은 상태가 바뀌면 build 함수가 재실행 되는 것은 압니다 근데 지금은 store위젯과 storeState는 한 세트 아닌가요 ? store위젯 생성자가 불린다는 것은, 새로 인스턴스 만들어 진다는 것인데 그럼 한 세트인 storeState도 매번 initState도 불려야 할 거 같은데.... 왜 그런지 알고 싶습니다.

  • flutter
유하 댓글 1 좋아요 1 조회수 118

값타입과 불변객체

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 임베디드 타입과 그 후 강의 값 타입과 불변 객체를 들으면서 궁금증이 생겨 게시판에 올립니다. 임베디드 타입에서 엔티티를 가질 수도 있다고 되어있는데 임베디드 타입의 역할은 단순한 값을 나타내기 위한 용도로 불변 객체로 설계되어야한다고 배웠습니다(다음 강의). 근데 만약 임베디드 타입안에 엔티티를 넣으면 불변 객체의 특성이 깨지는거 아닌가요...? 만약 엔티티를 넣으려면 엔티티 또한 수정자를 제거해서 불변 객체로 만들어야할거 같은데 이렇게 설계를 하는 이유를 정확히 감이 잡히지 않습니다(임베디드 타입안에 엔티티를 넣으면 좋은 이점 등을 모르겠습니다). 또한 임베디드 타입 안에 엔티티를 넣는 예제를 따로 생각해도 떠오르지 않네요.. 실무에서 이런 경우가 많이 있나요??

  • java
  • jpa
장재현 댓글 2 좋아요 0 조회수 171

연관관계가 있는 엔티티 save 시 영속성 관련 질문입니다.

미해결

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

save를 통해 A라는 엔티티를 하나 저장하려고 합니다. 그 엔티티는 ManyToOne으로 B라는 엔티티와 연관관계를 맺고 있습니다. A를 save할 때, B는 영속성 컨텍스트에 있어야 하는 상태인가요?

  • java
  • jpa
hello_hola 댓글 1 좋아요 0 조회수 147

질문

미해결

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

이런 문제들 너무 너무 좋은데, 혹시 영한님이 직접 손수 만드신 문제인가요? 아니면 이런 문제들 풀 수 있는 전문적인 사이트라던가 참고할수 있는 링크나 문제집이나 강의 추천해주시면 감사드리겠습니다.

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

H2 연결이 안되는 것 같습니다

해결됨

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

현재 H2 database에 연결하고 목록을 확인하려고 합니다. 그런데 자꾸 회원목록을 들어가거나 회원가입을 실행시 whitelabel 에러가 뜹니다. 제 생각으로는 H2 DB와의 연결 상태때문인 것 같은데, spring boot 실행중에는 아무런 에러가 뜨질 않습니다. 스프링 3.0이상을 사용해서 H2버전 문제인것 같아 1.4.200에서 최신버전을 써보았는데도 똑같은 결과가 나옵니다. 밑에 프로젝트 파일 링크 공유드립니다. https://drive.google.com/file/d/1Wg2OAv5FmdglAZDtUCYDypa1cprIUTda/view?usp=drive_link

  • java
  • spring
  • mvc
  • spring-boot
YH K 댓글 2 좋아요 1 조회수 227

Querydsl gradle 파일 질문

미해결

실전! Querydsl

안녕하세요 스프링부터 3.x 버전대 이상 그래들 설정에서 clean { delete file('src/main/generated') } 요부분 은 먼 기능이고 왜넣은건지 궁금합니다! 학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요.

  • java
  • jpa
냠냠냠 댓글 1 좋아요 0 조회수 1064

stack의 괄호문자제거 문제, 질문 이제안보시나요..

미해결

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

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 문제 조건에서 소괄호 사이의 존재하는 문자는 제거한다고 했는데 만약 소괄호 쌍이 안맞고 '(' 나 ')'가 남게되는 경우는 감안을 안해도되는건가요?

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

OrderServiceTest 실패

해결됨

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

OrderServiceTest에서 assertEquals("주문 가격은 가격 * 수량이다")에서 실패가 뜨는데 원인을 찾기 어려워 질문 드립니다. 26000원이 나와야 하는데 0원이 나와서.. 총 가격을 구하는 for문이 안 돌아갔나 싶은데 코드에 오류는 없는 것 같아서 원인을 찾기 어렵습니다. https://drive.google.com/file/d/1SSJFsd6F2hikp7T3MONt5QvklxY-EX3B/view?usp=sharing

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
sichelmond 댓글 1 좋아요 1 조회수 103

LockSupport.park()의 isInterrupted() 질문

미해결

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

안녕하세요. 김영한님의 강의 잘 보고 있습니다. 바보 같은 질문일 수 있지만, Thread.sleep()과는 다르게 LockSupport.park()는 interrupt()를 이용해서 깨어나도 isInterrupted()가 true인 이유가 궁금합니다. 그냥 단순히 InterruptedException이 발생하지 않기 때문일까요?

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

Batch size의 작동 순서가 궁금합니다.

미해결

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

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예 /아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] 프록시 부분도 있어 조금 복합적이긴 한데 Batch size의 작동 순서가 궁금합니다. 제가 이해하기로는 예를 들어 수업과 같이 Member 엔티티는 public class Member { @Id @GeneratedValue private Long id; private String name; private int age; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "TEAM_ID") Team team; } Team 엔티티는 public class Team { @Id @GeneratedValue private Long id; private String name; @BatchSize(size = 100) @OneToMany(mappedBy = "team") private List<Member> members = new ArrayList<>(); } 위와 같다고 할때 select t from Team t 해당 JPQL로 Team 엔티티들을 조회한다면 t.members의 객체들은 프록시로 존재하여 id 값만을 가지게 되고 for (Team result : resultList) { System.out.println("result = " + result.getMembers().size()); for (Member member : result.getMembers()) { System.out.println("member = " + member); } } 이 처럼 실행하면서 result.getMembers()가 처음 호출 될때 select m1_0.TEAM_ID, m1_0.id, m1_0.age, m1_0.name from Member m1_0 where m1_0.TEAM_ID in (?, ?...) 다음과 같은 쿼리를 호출해 Member 프록시들의 target에 알맞게 주입 해주게 되나요? 이 부분이 궁금하여 질문 드립니다.

  • java
  • jpa
leech2479 댓글 2 좋아요 1 조회수 348

강의에서 사용하는 keycloak 버전인 19.0.1 다운로드 URI 공유

미해결

스프링 시큐리티 OAuth2

강의를 매끄럽게 따라하려면 똑같은 keycloak 버전을 사용하셔야 합니다. 2x.x.x 버전 사용 시 openid를 강제로 사용해야 할 수 있습니다. 다운로드 URI : https://github.com/keycloak/keycloak/releases/download/19.0.1/keycloak-19.0.1.tar.gz

  • java
  • spring
  • spring-boot
  • oauth
화이팅 댓글 1 좋아요 0 조회수 188

적성....

미해결

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

냉정하게 적성이 없지만 꾸역꾸역 만들어가고 있는 사람입니다.. 여러분 화이팅!!!!!!!!!!!!

  • java
  • 객체지향
wnguddl96 댓글 4 좋아요 0 조회수 692

Missing parameter: code 에러

미해결

스프링 시큐리티 OAuth2

Oauth 2.0 User 모델 소개(2)영상에서 assessToken 호출을 위한 과정을 진행하는데 발생한 문제입니다. keycloack 버전이 달라 발생한 문제인지 질문드립니다. 현재 keycloack 버전 21.1.2 입니다.

  • java
  • spring
  • spring-boot
  • oauth
JUNI 댓글 1 좋아요 0 조회수 250

@Transactional이 필요한곳과 필요없는곳

해결됨

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

안녕하세요 service 관련 코드를 공부하다가 질문이 생겨서 문의드립니다. 제가 지금까지 봤던 코드들은 @Transactional(readOnly = true) 는 Read할 때 사용을 하고 @Transactional은 Read를 제외한 CUD일 때 사용을 한다고 알고있는데, 인터넷을 찾아보니 "모든 CUD 관련 코드에 @Transactional을 무분별하게 사용하면 성능에 저하가 올 수 있다. 트랜잭션은 묶음의 처리입니다. 단건의 INSERT, DELETE, UPDATE 는 Transaction 이 필요하지 않습니다." 라고 블로그에서 보았습니다. 모든 CUD 관련 코드에다가 @Transactional을 붙이면 안되는건가요? 또한 @Transactional(readOnly = true) 는 Read 관련 코드에 붙이는게 필수는 아닌가요? 어떤 방식으로 코드를 짜는게 좋은 코드인지 궁금합니다.

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
lllilililll 댓글 1 좋아요 0 조회수 347

this 질문

해결됨

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

그러면 main 메소드 내에 Thread thread1 = new Thread(..); Thread thread2 = new Thread(..); 이걸 실행하면 main 스택프레임내에 참조변수가 저장이될텐데 thread1,thread2가 아닌 this로 저장된다는건가요? 그러면 예를들어, 참조변수 a의 메소드를 실행하게된다면 먼저 스택프레임내에서 참조변수에서 실제 인스턴스가 저장된 힙 주소를 꺼내어서 그 힙주소로 간다음 메소드를 가져오는게 아니라 참조변수 a가 아닌 this 인거죠?

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
인프런 댓글 1 좋아요 0 조회수 359

로그아웃 시 캐시 삭제

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

logout 로직 실행 시 강의에서는 storage만 삭제하는데 provider들의 캐시는 지워야 하는게 맞는지 궁금해서 질문 드립니다. 아니면 user와 연동된 장바구니와 주문 프로바이더 캐시만 null로 만들어야 할까요?? 추가로 만약 캐시를 지운다면 userMeProvider에서 ref를 받아와 각 프로바이더 state를 null로 바꿔버리면 되나요?

  • flutter
  • 하이브리드-앱
Sungmin Oh 댓글 1 좋아요 0 조회수 192

강의 자료 어디에서 받아볼 수 있나요?

미해결

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 수업자료 (문제풀이)만 보면서 직접 풀어보고 싶은데 자료는 어디서 받아볼 수 있을까요?

  • java
  • 객체지향
응달기 댓글 1 좋아요 0 조회수 206

findBy 로 조회 시에, 조회 조건으로 PK vs Unique 제약조건 컬럼

미해결

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

테이블은 한 게시글 당 게시글 이미지를 여러 개 저장할 수 있도록 하는 postImage 테이블이고 pk는 autoincrement인 Long 타입 postImageId입니다. 그리고 unique한 조건은 @ManyToOne으로 매핑된 post(not null)와 imageUrl(not null) 컬럼의 조합입니다. 이 때, postImage 엔티티를 조회하기 위해서는 pk인 postImageId로 조회하는게 좋을까요? 아니면 unique 제약조건인 post+imageUrl로 조회하는게 좋을까요? 실무에서 더 선호되는 방식이나 성능적, 설계적으로 좋은 방식이 궁금합니다

  • java
  • jpa
jayjoy05 댓글 1 좋아요 0 조회수 128

paginationParams 파라미터 추가 등.

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

23년 5월에 비슷한 질문이 있었습니다. 개인적으로 답하신듯해서 질문 드려봅니다. 질문1. paginationParams의 count 값을 각 메뉴에서 변경하려 하는데 현재 강의 소스에서는 어디부분을 확인해야 하는지요? 질문2. paginationParams에서 강의내용에 있는 after, count외에 다른.. 예를 들면 검색조건의 값을 받을 수 있게 하려면 어떻게 풀어야 하나요? 강의내용에 있는 DB를 가지고 할 건 아니고, 응용해서 별도로 해보다 보니.. 문의드립니다.

  • flutter
  • 하이브리드-앱
  • codefactory
댓글 2 좋아요 0 조회수 170

스레드와 메모리영역 질문

해결됨

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

1:31 경에 쓰레드1,2,3 3개의 객체를 만들고 실행하잖아요 그러면 1:49 그림에서 3개의 인스턴스가 그려져야하는거 아닌가요? 반복문을 통해 Thread를 100개 실행하고 있습니다. 여기서, thread 참조변수에 Thread 객체를 생성하고 있던데, 그렇다면 for문 순회하나하고 블록 종료시점에 스택프레임이 제거되어 thread 참조변수는 제거될것이고 힙영역에 Thread 객체가 존재하다가 나중에 GC 실행시점에 Thread 객체가 지워질것으로 보이는데 맞나요? 만약 그렇게 Thread 객체가 지워진다면 실행중이던 스레드도 중단되나요?

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
인프런 댓글 1 좋아요 0 조회수 328

인기 태그

인프런 TOP Writers

주간 인기글