inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

반복문 강의

해결됨

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

반복문강의 20:40초 for 과 while 반복문 풀이를 할때 for문은 i=5까지 반복한다하셨는데요. 어떻게 출력값이 짝수기준으로 while 출력물이 나오는지 이해가 안갑니다. i=1일때 for문으로 현재숫자:1 출력은 이해가 가구요. 그다음 while로 넘어갔는데 조건식이 false여서 다시 for문으로 돌아오는 것인가요? 왜 돌아가는지 이해가 안가서요. 그다음 2일땐 while 조건식이 True 여서 출력되고break로 빠져나오고 다시 for문으로 돌아가는건가요.

  • python
  • java
  • c
  • 정보처리기사
ghkd1118 댓글 1 좋아요 0 조회수 150

강의 영상 음성 실수

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 강의 - "생성자 - 오버로딩과 this()" 시간 - 2분 38초 ~ 2분 40 내용 - "생성자를 오버라이딩 한 덕분에..." 라고 하셨는데 "생성자를 오버로딩 한 덕분에..."로 말씀하시려 던 게 아닐까 생각합니다. 바로 10초 전에 헷갈리시다고 말씀하셔서 실수하신 것 같습니다. 별 거 아닌 사소한 내용이긴 한데 공유 드립니다.

  • java
  • 객체지향
dkdleldho 댓글 1 좋아요 1 조회수 145

[다형성] 다형성 객체 생성과 참조에 관한 질문

해결됨

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

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 다형성에 관해 명확한 이해가 조금 어려운 부분이 있어 질문 드립니다! 아래의 코드에서, 1) 코드가 동작 가능한 이유는 '생성된 Child Class의 인스턴스에 Parent Class의 인스턴스가 포함되기 때문에, Parent Class의 참조값을 담을 수 있는 poly라는 변수에 Child Class 인스턴스 참조값을 저장할 수 있다. ' 반대로, 2) 코드가 동작 불가한 이유는 '생성된 Parent Class 인스턴스에는 Child Class의 인스턴스가 포함되지 않아서, Child Class의 참조값을 담는 poly2 라는 변수에 Parent Class 인스턴스 참조값을 저장할 수 없다.' 이렇게 이해했습니다. 제가 이해한 바가 맞을까요?? 1) Parent poly = new Child(); 2) Child poly2 = new Parent(); 위의 이해가 맞다면, 1)코드에서 생성한 poly Parent Class변수는 Child 인스턴스를 생성했음에도 불구하고 Parent Class에만 접근할 수 있기에, Child 인스턴스에 대한 정보를 소실하는 것 처럼 보여집니다. Child 인스턴스 변수나 method에 접근하지 못함에도 Child 인스턴스를 포함하고 있는 것은 괜한 메모리를 사용하는 것은 아닌가 하는 생각이 드는데요, 2-1) 위에 표현한 제 생각이 옳은 생각인지가 궁금합니다. 실제로 Child 인스턴스에 대한 정보를 소실하는 것일까요? 아니면 Child 인스턴스는 존재하지만, 접근 권한만 제한받는 것일까요?? 2-2) 실제 인스턴스에 대한 정보를 소실하는 것이라면, 다형성을 활용하는 이유가 궁금합니다. 이 질문은 지금까지 학습한 내용을 정리하고 넘어가고자 질문을 드린 상황이기에, 추후 강의에서 다뤄지는 내용이면 강의를 통해 배우겠습니다. 감사합니다!

  • java
  • 객체지향
jonghyeok097 댓글 2 좋아요 0 조회수 238

시퀀스 최적화의 이점에 대해 질문드립니다.

미해결

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

처음에 실습 전에 강의에서 들은바로는 call을 통해 가져오면 네트워크를 타기 때문에 성능 문제가 생길 수 있어서 미리 일정량의 사이즈를 DB에 올려놓고 메모리에서 그 갯수만큼 쓰는 방식을 통해 최적화할 수 있다고 이해했습니다. 그런데 실습을 따라하면서 main()을 재실행할때마다 이렇게 50개씩 확보를 해버리는데 그럼 main을 한 번 실행할 때 50개의 persist 가 나가야 성능이 최적화될 수 있는걸까요? 스프링이 아닌 자바로 실행해서 서버가 그냥 내려가니까 생기는 문제일까요? 정리하면, 실제 웹 어플리케이션 서버 구동 상황에서는 실습처럼 서버가 바로 내려가는게 아니라 작동된 상태로 유지되고 그 텀 안에서 50개의 메모리를 최적화해서 쓸 수 있는게 맞을까요?

  • java
  • jpa
맥스 댓글 2 좋아요 0 조회수 345

상품주문_재고수량초과() 질문

미해결

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

@Test public void 상품주문_재고수량초과() throws Exception { //Given Member member = createMember(); Item item = createBook("시골 JPA", 10000, 10); //이름, 가격, 재고 int orderCount = 11; //재고보다 많은 수량 //When assertThrows(NotEnoughStockException.class, () -> orderService.order(member.getId(), item.getId(), orderCount)); //Then fail("재고 수량 부족 예외가 발생해야 한다."); } 이렇게 작성할 경우, fail()문을 넣으면 테스트오류가 뜨는데 없애는 게 맞나요, 안넣으면 오류가 안떴을 경우를 어떻게 확인하나요??

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
방경원 댓글 2 좋아요 0 조회수 409

시퀀스 최적화 할 때 DB에서 따로 시퀀스를 수정하는 쿼리를 날려줘야 하나요?

미해결

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

<property name="hibernate.hbm2ddl.auto" value="create" /> create 설정으로 해놨는데도 allocationSize 를 1에서 50으로 바꾸고 돌려봤더니 Exception in thread "main" jakarta.persistence.PersistenceException: [PersistenceUnit: hello] Unable to build Hibernate SessionFactory at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.persistenceException(EntityManagerFactoryBuilderImpl.java:1591) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1512) at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:55) at jakarta.persistence.Persistence.createEntityManagerFactory(Persistence.java:80) at jakarta.persistence.Persistence.createEntityManagerFactory(Persistence.java:55) at hellojpa.JpaMain.main(JpaMain.java:13) Caused by: org.hibernate.MappingException: Could not instantiate id generator [entity-name=hellojpa.Member] at org.hibernate.id.factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator(StandardIdentifierGeneratorFactory.java:230) at org.hibernate.id.factory.internal.IdentifierGeneratorUtil.createLegacyIdentifierGenerator(IdentifierGeneratorUtil.java:127) at org.hibernate.mapping.SimpleValue.createGenerator(SimpleValue.java:415) at org.hibernate.internal.SessionFactoryImpl.lambda$createGenerators$1(SessionFactoryImpl.java:457) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184) at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) at java.base/java.util.HashMap$ValueSpliterator.forEachRemaining(HashMap.java:1787) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) at org.hibernate.internal.SessionFactoryImpl.createGenerators(SessionFactoryImpl.java:456) at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:271) at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:450) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1507) ... 4 more Caused by: org.hibernate.MappingException: The increment size of the [MEMBER_SEQ] sequence is set to [50] in the entity mapping while the associated database sequence increment size is [1]. at org.hibernate.id.enhanced.SequenceStyleGenerator.adjustIncrementSize(SequenceStyleGenerator.java:265) at org.hibernate.id.enhanced.SequenceStyleGenerator.configure(SequenceStyleGenerator.java:207) at org.hibernate.id.factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator(StandardIdentifierGeneratorFactory.java:224) ... 20 more 이런 오류들이 떴고 확인해보니 하이버네이트에서 정의된 시퀀스의 증가수 크기와 h2 DB의 증가수가 달라서 생긴 오류인 것 같아 DB에 따로 쿼리를 날려주고 실행해보니 정상 작동되더라구요. ALTER SEQUENCE MEMBER_SEQ INCREMENT BY 50; 이렇게 사이즈 변경 시, DB에서 수동으로 쿼리를 날려줘야하나요?

  • java
  • jpa
맥스 댓글 1 좋아요 0 조회수 281

Java 17 다운로드

해결됨

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

java 17을 다운받고 인텔리제이를 실행했는데요 group이나 version (보라색 글씨)가 활성화?가 안돼요 그리고 java 11과 java 14를 깔았던게 있는데 이것때문에 cmd 에서 java -version 이라고 쳤을 때 14가 계속 뜨는 바람에 11과 14를 모두 지우고 17만 남겨뒀거든요 그런데 인텔리제이에서 제가 같이 듣고있는 자바코드들이 다 오류가 뜹니다. CoreApplication.java 도 실행이 아예 되질 않습니다.

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

identity 전략으로 데이터를 등록했을 때

해결됨

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

24:13 쯤의 코드 출력을 보면 values 에 null 값이 들어가는 ============ Hibernate: /* insert for hellojpa.Member */insert into Member (name, id) values (?, default) ============ 저는 이런식으로 나오네요... @Entity public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column(name = "name") private String username; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public Member() { } } public class JpaMain { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); EntityManager em = emf.createEntityManager(); //code EntityTransaction tx = em.getTransaction(); tx.begin(); try { Member member = new Member(); member.setUsername("C"); System.out.println("============"); em.persist(member ); System.out.println("============"); tx.commit(); } catch (Exception e) { tx.rollback(); } finally { em.close(); } emf.close(); } }

  • java
  • jpa
맥스 댓글 2 좋아요 0 조회수 233

에노테이션예외 발생

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오)y 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)y 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)y [질문 내용] Caused by: org.hibernate.AnnotationException: Entity 'jpabook.jpashop.domain.Category' has no identifier (every '@Entity' class must declare or inherit at least one '@Id' or '@EmbeddedId' property) 실행시 에러메세지가 뜨는데 @Id 에노테이션이 있음에도 해결되지않습니다. 소스파일도 첨부합니다 https://drive.google.com/file/d/126dOVMwaCPYOSqD4f7XOC0BkCUqtONAK/view?usp=sharing

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
으르므느 댓글 2 좋아요 0 조회수 138

intellij 단축키 표시가 파란색으로 나오는데 어떤 plugin을 설치해야 하나여?

미해결

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

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

  • java
  • 객체지향
songyjun 댓글 2 좋아요 0 조회수 467

Interrupted() 질문드립니다.

미해결

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

안녕하세요! 스레드 강의 정말 잘 듣고 있습니다~ 인터럽트에서 궁금한점이 있어서 질문드립니다. isInterrupted()는 Thread.currentThread에서 실행할 수 있고, interrupted()는 Thread에서 실행할 수 있는데 그럼 혹시 다른 스레드에서 인터럽트를 실행해도 Thread.interrupted()에 걸릴까 싶어 테스트를 해보니 그러지는 않더라구요. Thread.interrupted의 내부를 보니 currentThread()를 호출하긴하던데, Thread.currentThread.interrupted()가 안되는 이유는 스레드의 내부적인 부분으로 보면 될까요? 궁금해서 혹시하고 질문드렸습니다ㅠ

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

notifyall에서 질문

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 마지막 notifyall에서 만약에 c1 다음에 p1이 락을 획득하면 나머지 c2, c3, c4, c5는 대기집합에 들어가나요 아니면 깨어있는 상태로 계속있나요?

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
썩은도토리 댓글 2 좋아요 0 조회수 187

생성자 생성시 질문있어요

해결됨

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

5분37초 영상입니다. 해당 main함수에서 Child c = new Child()를 생성시엔 부모 클래스의 메서드를 부르지 않나요? Child() 생성자가 없기때문에 무시한 것인지 알고싶어요

  • python
  • java
  • c
  • 정보처리기사
주서 댓글 3 좋아요 0 조회수 302

distinct 질문 드립니다.

미해결

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

안녕하세요. 강의 잘 보고 있습니다. em.createQuery에서 distinct를 사용해도 DB에서 받아올 때는 뻥튀기된 데이터를 받아오는 것이 맞을까요? em.createQuery의 반환값으로 List<Order>에 담을 때 Order의 id 중복을 제거해서 담은 뒤 반환한다는 것이 맞을까요? 결국 distinct를 사용하나 안 하나 DB에 나가는 쿼리는 같을까요? public List<Order> findAllWithItem() { return em.createQuery( "select distinct o from Order o" + " join fetch o.member m" + " join fetch o.delivery d" + " join fetch o.orderItems oi" + " join fetch oi.item i", Order.class) .getResultList(); } 참고한 질문과 답변입니다. https://www.inflearn.com/course/lecture?courseSlug=%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-JPA-API%EA%B0%9C%EB%B0%9C-%EC%84%B1%EB%8A%A5%EC%B5%9C%EC%A0%81%ED%99%94&unitId=24332&tab=community&category=questionDetail&q=555554

  • java
  • spring
  • spring-boot
  • jpa
저스트 댓글 1 좋아요 0 조회수 388

인텔리제이 먹통

미해결

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

인텔리제이 무료버전이 다 끝나서 다시 지우고 무료료 쓸 수있는 학생버전으로 깔았는데 그 다음부터 김영한님의 파일들이 잘 작동이 안됩니다. 일텔리제이 버전은 아래와 같습니다: IntelliJ IDEA 2024.2.1 (Ultimate Edition) Build #IU-242.21829.142, built on August 29, 2024 Licensed to xx Subscription is active until September 2, 2025. For educational use only. Runtime version: 21.0.3+13-b509.11 aarch64 (JCEF 122.1.9) VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. 김영한님의 폴더를 오픈하면 소스 파일이 안뜨고 이런식으로 뜹니다 또 어쩔때는 소스파일이 다 뜨지만 run을 하면 run이 실행되고 다시 프로젝트 목록의 소스파일들이 다 사라집니다

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
  • 인텔리제이
최연승 댓글 1 좋아요 0 조회수 289

스프링 부트 3버전에서의 실습

미해결

스프링 기반 REST API 개발

스프링 부트 3버전에서의 실습 관련 업데이트는 진행하지않는건가요?

  • java
  • spring
  • rest-api
jun 댓글 1 좋아요 0 조회수 209

시큐리티 완전정복(6.x 개정판) 쿠폰 저도 받을수 있을까요.. ㅜ

해결됨

스프링 시큐리티 OAuth2

학습질문과 전혀 관련없는 질문이라 죄송합니다. ㅠ 저와같이 할인쿠폰 만료일 지나신 분 쿠폰요청글을 보고 혹시나 저도 아직 가능한지 여쭙고 싶어서 혹시나 하는 마음에 글올립니다. oAuth하고 이전버전 시큐리티 강의 듣고 있습니다. 저도 메일을 늦게 확인하여서 쿠폰 만료일이 지났는데 받을수있을까요? 발급받았던 이메일 주소 는 laundryday@naver.com 입니다.. 좋은 하루 보내세요 감사합니다.

  • java
  • spring
  • spring-boot
  • oauth
Hong Yong Taek 댓글 0 좋아요 0 조회수 139

어떻게 오버라이딩된 toString()의 형식으로 출력되는지 헷갈립니다ㅠㅠ

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예) [질문 내용] 위의 코드에서 WildCardEx.printGenericV1(dogBox); 의 결과로 T = Animal{name='멍멍이', size=100} 이렇게 Animal에 오버라이딩한 toString의 형태가 출력되는지 궁금합니다...ㅠㅠ printGenericV1() 메서드에서는 box.get()을 사용하고 있지만, get() 메서드는 return 으로 그저 Dog 객체를 반환하는데 어떻게 오버라이딩 된 toString()의 형식으로 출력될 수 있는지 헷갈립니다ㅠ 기본적인 질문을 드려 죄송합니다...

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

synchronized lock 획득 질문, 스프링에서 synchronized 질문

해결됨

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

이해 확인에 대한 질문입니다. synchronized는 메서드에서 현재 getBalance()랑 withdraw()에서 선언되었는데, lock은 객체가 가지고있다고 이해하고있습니다. synchronized 메서드가 실행시 lock을 가지고 간다면 synchronized가 선언되지 않은 메서드(동일 클래스)는 자유롭게 실행이 가능한거고, 만약 synchronized withdraw가 스레드1에서 실행중이라면 스레드2가 synchronized getBalance()시 락을 획득할 수 없어서 대기해야하는 것이 맞나요? 2. 제가 스프링 DB2까지 강의를 듣고있는데, 스프링에서는 실제로 WAS의 스레드 풀에서 기본적으로 많은 스레드를 확보해두고 있는 것으로 알고있습니다. 해당 강의들에서 synchronized를 사용해본 기억은 없는 것 같아요. 기본적으로 스프링은 synchronized가 필요한 부분에 구현이 되어있는 걸까요?(싱글톤 빈에 대한 질문입니다!) 아니면 멀티스레드의 측면도 개발자가 직접 테스트하면서 최적화가 필요할까요?(아마 제 예상으로는 개발자가 직접하는 부분도, 스프링이 해주는 부분도 있을 것 같은데...) 스프링 고급편, 부트편이나 JPA 학습 시점에 알 수 있는 부분일까요?

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
영한노게임 댓글 2 좋아요 0 조회수 357

inner sequence context 관련 질문

해결됨

Kevin의 알기 쉬운 Spring Reactive Web Applications: Reactor 1부

안녕하세요 강사님 좋은 강의 감사드립니다. 해당 영상에서 예제 코드가 잘 이해가 되지 않아 질문 남깁니다. inner Sequence 내부에서 Context에 저장된 데이터를 외부에서 읽을 수 없다면 subscribe할 때 Context에 저장된 job은 inner 시퀀스에서 저장한 것이므로 읽을 수 없어야 한다고 생각이 들었습니다. 근데 실행 결과에서는 job에 대한 데이터를 잘 읽어오길래 혼란이 왔습니다. 제가 아직 리액티브 프로그래밍 동작 방식이 익숙치 않아서 그런데 확인해주시고 부연 설명해주시면 정말 감사드리겠습니다. @Slf4j public class ContextFeatureExample4 { public static void main(String[] args) throws InterruptedException { String key1 = "id"; Mono.just("Kevin") // flatMap 내부: inner Sequence .flatMap(name -> Mono.deferContextual(ctx -> Mono.just(ctx.get(key1) + ", " + name) .transformDeferredContextual((mono, innerCtx) -> mono.map(data -> data + ", " + innerCtx.get("job"))) .contextWrite(context -> context.put("job", "Software Engineer")) ) ) .publishOn(Schedulers.parallel()) .contextWrite(context -> context.put(key1, "itVillage")) .subscribe(data -> log.info("onNext = {}", data)); Thread.sleep(100L); } }

  • java
  • spring
  • project-reactor
  • webflux
chaelynjang 댓글 1 좋아요 0 조회수 156

인기 태그

인프런 TOP Writers

주간 인기글