inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

objmemberrepository 예외 발생

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] package io.member.impl; import io.member.Member; import io.member.MemberRepository; import java.io .*; import java.util.ArrayList; import java.util.List; public class ObjectMemberRepository implements MemberRepository { private static final String FILE_PATH = "temp/members-obj.dat"; @Override public void add(Member member) { List<Member> members = findAll(); members.add(member); try (ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(FILE_PATH))){ oos.writeObject(members); } catch (IOException e) { throw new RuntimeException(e); } } @Override public List<Member> findAll() { try(ObjectInputStream ois = new ObjectInputStream(new FileInputStream(FILE_PATH))){ Object findObject = ois.readObject(); return (List<Member>) findObject; } catch (FileNotFoundException e) { return new ArrayList<>(); } catch (IOException | ClassNotFoundException e) { throw new RuntimeException(e); } } } 코드 동일하게 작성했는데 콘솔 메인에서 마지막 나이를 작성하니 Exception in thread "main" java.lang.RuntimeException: java.io .NotSerializableException: io.member.Member at io.member.impl.ObjectMemberRepository.add(ObjectMemberRepository.java:22) at io.member.MemberConsoleMain.registerMember(MemberConsoleMain.java:52) at io.member.MemberConsoleMain.main(MemberConsoleMain.java:26) Caused by: java.io .NotSerializableException: io.member.Member at java.base/ java.io .ObjectOutputStream.writeObject0(ObjectOutputStream.java:1121) at java.base/ java.io .ObjectOutputStream.writeObject(ObjectOutputStream.java:336) at java.base/java.util.ArrayList.writeObject(ArrayList.java:949) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) at java.base/java.lang.reflect.Method.invoke(Method.java:565) at java.base/ java.io .ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:946) at java.base/ java.io .ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1431) at java.base/ java.io .ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1353) at java.base/ java.io .ObjectOutputStream.writeObject0(ObjectOutputStream.java:1115) at java.base/ java.io .ObjectOutputStream.writeObject(ObjectOutputStream.java:336) at io.member.impl.ObjectMemberRepository.add(ObjectMemberRepository.java:20) ... 2 more 이런 예외가 발생합니다

  • java
  • 네트워크
  • 객체지향
댓글 1 좋아요 0 조회수 68

강의 자료

해결됨

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 섹션 12 - HTTP 서버 만들기 강의자료 26페이지 HttpResponse코드에 setStatus() 메서드 이름이 setStatusCode()인 것 같은데 "Code"가 빠져있어요. 그래서 강의자료 30페이지에 있는 HttpRequestHandlerV4코드 notFound()메서드에서도 setStatusCode가 아닌 setStatus로 작성되어 있습니다!

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

답변부탁드리겠습니다.

미해결

실전! Querydsl

(OrderSpecifier)관련 내용 어디있을가요 섹션7에서 스프링 데이터 JPA는 자신의 정렬(Sort)을 Querydsl의 정렬(OrderSpecifier)로 편리하게 변경하는 기능을 제공한 다. 이 부분은 뒤에 스프링 데이터 JPA가 제공하는 Querydsl 기능에서 살펴보겠다. 37. 스프링 데이터 페이징 활용3 - 컨트롤러 개발 -> 여기 챕터에서 뒤에 강의에서 설명하겠다하셨는데 어디 강의일까요.. 섹션8에 OrderSpecifier관련 내용은 없는거같은데요,,?

  • java
  • jpa
임다정 댓글 2 좋아요 0 조회수 102

네트워크 - 프로그램2 / ServerV6 / throws IOException 문의

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 메인에서 IOException 을 던지는 이유는 ServerSocket 때문인거 같은데 예외를 발생시키는 항목들을 try문에 넣고 throws IOException을 삭제하면 안돼나요? 아니면 다른의미가 있는건지 궁금합니다. public class ServerV6 { private static final int PORT = 12345; public static void main(String[] args) throws IOException { log("서버 시작"); SessionManagerV6 sessionManager = new SessionManagerV6(); ServerSocket serverSocket = new ServerSocket(PORT); log("서버 소켓 시작 - 리스닝 포트: " + PORT); // ShutdownHook 등록 ShutdownHook shutdownHook = new ShutdownHook(serverSocket, sessionManager); Runtime.getRuntime().addShutdownHook(new Thread(shutdownHook, "shutdown")); try { while (true) { Socket socket = serverSocket.accept(); // 블로킹 log("소켓 연결: " + socket); SessionV6 session = new SessionV6(socket, sessionManager); Thread thread = new Thread(session); thread.start(); } } } catch (IOException e) { log("서버 소캣 종료: " + e); }

  • java
  • 네트워크
  • 객체지향
nada03yo 댓글 1 좋아요 0 조회수 62

일부 강의가 재생이 되지 않습니다

미해결

마이크로서비스 디자인 패턴 완벽 가이드

48강 , 57 강 65강 이 재생이 되지 않는것 같습니다.

  • java
  • spring-cloud
  • 디자인-패턴
  • msa
  • patterns
검은흑사 댓글 2 좋아요 0 조회수 138

(OrderSpecifier)관련 내용 어디있을가요

미해결

실전! Querydsl

스프링 데이터 JPA는 자신의 정렬(Sort)을 Querydsl의 정렬(OrderSpecifier)로 편리하게 변경하는 기능을 제공한 다. 이 부분은 뒤에 스프링 데이터 JPA가 제공하는 Querydsl 기능에서 살펴보겠다. 37. 스프링 데이터 페이징 활용3 - 컨트롤러 개발 -> 여기 챕터에서 뒤에 강의에서 설명하겠다하셨는데 어디 강의일까요..답변부탁드릴게요 섹션8에 OrderSpecifier관련 내용은 없는거같은데요,,?

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

[2주차] 곁다리 질문

해결됨

6주 완성! 백엔드 이력서 차별화 전략 4가지 - 똑같은 이력서 속에서 돋보이는 법

1. 현재 학습 진도 몇 챕터/몇 강을 수강 중이신가요? 2주차 성능 테스트 챕터까지 수강했습니다. 제목처럼 강의 주요 내용은 아니지만 궁금한 점이 생겨 글 작성하였습니다. 질문에 악의가 없는데, 쓰다보니 공격적인 말투로 느껴지네요... 죄송합니다. 공격이 아니고 제가 공부한 부분과 달라서 어떤 게 맞는지를 여쭙고자 작성한 질문입니다. 작성해주신 포트폴리오 코드를 보면, A Service에서 A Repository, B Repository, C Repository 등을 주입받아 사용하셨는데 이게 올바른 구조인가요?? 상황: 현재 저는 계층형 폴더 구조(Controller, Service, Repository 등)가 아닌 도메인형 폴더 구조(User, Post, Tag 등)를 가져가고 있습니다. 계층형과 도메인형 모두 자신의 도메인이 아닌 다른 도메인의 다른 레이어 파일을 주입받기 보다는 Service는 Service끼리 주입을 받는 게 결합도를 낮추고 리팩토링하기 편한 방향이라고 생각했습니다. 이러다보니 Controller에서 호출하는 함수는 DTO로 통신을 하고, Service끼리 사용하는 함수는 Entity로 통신을 하게 되었습니다. 주석으로 "Interal method"라고 명시를 하였지만, 응답 형식만 다를 뿐 같은 일을 하는 함수도 많아져서 이게 맞는건가 싶은 고민이 있었습니다. 애초에 Repository를 쓰는 것도 여러 파일에서 쉽게 불러쓰기 위해서라는 말도 봤던 것 같아서 뭐가 맞는지 정답이 궁금합니다. TPS 기준이 궁금합니다. 현재 쿠폰 시스템 비슷한 프로젝트를 하고 있는데, "우리 서비스의 TPS가 몇이다"라고 할 때는 가장 주요한 로직 기준으로 측정한 결과일까요? 아니면 모든 API 중 가장 낮은 TPS가 기준이 될까요? 또한 TPS 300이 되기 위해서, 400이 되기 위해서 이런 식으로 말씀해주셨는데, Insert 또는 Update 작업이 포함된 경우 어느정도 TPS가 나오면 적지 않은 수준일까요? 감사합니다.

  • java
  • spring
  • mysql
  • redis
  • 이력서
정수환 댓글 2 좋아요 0 조회수 88

결과 값의 정렬

미해결

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

멀티 스레딩에서 파일에 write할 때 질문이 있습니다. thread가 chunk 단위로 파일에 입력되는것은 확인했습니다. 그런데 결과 값의 정렬은 불가능한가요???? 예를 들어 db에 1, 2, 3, 4, 5 ... 라는 데이터가 있고 FlatFileItemWriter로 파일에 쓸 경우 1,2,3,4,5 이런식으로 정렬된 값이 저장 가능한지

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
이동연 댓글 2 좋아요 1 조회수 67

JpaPagingItemReader

미해결

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

humanThreatDataReader는 스레드 안전한 JpaPagingItemReader 를 사용했다. 라는 구문에서 헷갈리는게 있는데 JpaPagingItemReader의 경우는 lock을 걸지 않는데 SynchronizedItemStreamReader 데코레이터를 적용해야하지 않나요???

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

상태 질문

미해결

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

상태(State): 작전 수행 지점들 상태(State)란 Flow 내에서 현재 실행이 머무르거나 도달할 수 있는 모든 논리적 지점 을 의미한다. 자동문의 "문 닫힘/문 열림" 에 해당한다. Flow를 구성하는 상태(State)는 크게 두 가지 주요 유형으로 분류할 수 있다. 실행 상태 (StepState 등): 실행 상태는 Flow 내에서 실제 특정 작업(로직)을 수행하는 지점을 나타낸다. 우리 강의의 예제 코드에서 사용된 analyzeContentStep , publishLectureStep , summarizeFailureStep 과 같은 Step이 대표적인 실행 상태(StepState)에 해당한다. 종료 상태 ( EndState ): 종료 상태는 Flow 실행의 최종 도착점을 나타내는 상태이다. Flow가 이 상태에 도달하면 더 이상 진행되지 않고 실행이 종료된다. Job의 최종 결과는 Flow가 어떤 EndState 로 끝났는지에 따라 결정된다. 다이어그램의 [작업 종료] 가 바로 이 종료 상태(EndState)를 가리킨다. 종료 상태(EndState): Flow 실행의 최종 도착점 이다. 이 상태에 도달하면 실행 흐름이 더 이상 진행되지 않고 Flow가 종료된다. Job의 최종 결과는 어떤 EndState로 끝났는지 에 따라 결정되며, 앞선 다이어그램의 [작업 종료] 가 바로 이 종료 상태(EndState)에 해당한다. 여기서 종료 상태가 두개인데 다른 내용인가요???

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
이동연 댓글 2 좋아요 1 조회수 61

17강 api서버구현2 질문있습니다.(ai답변이 이상합니다.)

해결됨

서버개발자 과제전형 완벽가이드 - 1편

에러상황: Caused by: java.lang.AssertionError: Range for response status value 401 expected:<SUCCESSFUL> but was:<CLIENT_ERROR> at org.springframework.test.util.AssertionErrors.fail(AssertionErrors.java:61) at org.springframework.test.util.AssertionErrors.assertEquals(AssertionErrors.java:128) at org.springframework.test.web.servlet.result.StatusResultMatchers.lambda$is2xxSuccessful$3(StatusResultMatchers.java:80) at org.springframework.test.web.servlet.MockMvc$1.andExpect(MockMvc.java:214) at com.example.controller.BookControllerItTest.정상인자로 요청시 성공한다.(BookControllerItTest.groovy:43) 관련 내용을 검색해 보니 401 에러는 보통 로그인/인증 문제로, SecurityConfig.java 파일 등을 수정하라는 안내를 봤습니다. 다만, 현재 수강 중인 강의에는 로그인 기능이 없는 상황입니다. 이 경우, 인증 없이 테스트가 통과되도록 설정을 변경하려면 어떻게 해야 할지 조언 부탁드립니다. 참고로, 관련 파일은 메일로 함께 전달드렸습니다. 감사합니다.

  • java
  • spring
  • spring-boot
  • database
zzzzz 댓글 2 좋아요 0 조회수 147

섹션3 강의 누락?

미해결

[백엔드/예외처리 시나리오/집계 최적화] 백엔드 포트폴리오와 실무 이력 강화 전략. 올인원 PART1

섹션3에서 노션에 보면 자료들과 다르게 중간과정은 다 빠지고 바로 실행하는 과정으로 들어가네요. Settlement 객체 생성하는 부분이나 그런 부분은 전혀 없네요

  • java
  • spring-boot
  • 포트폴리오
  • 기술면접
  • bulkinsert
지성조 댓글 1 좋아요 0 조회수 81

자바 람다의 지연 평가과 스트림의 지연 연산

미해결

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 자바 람다의 지연 평가과 스트림api의 지연 연산의 차이가 궁금합니다

  • java
  • 함수형-프로그래밍
  • lambda
  • optional
ssshhh 댓글 1 좋아요 0 조회수 71

em.find 1차 캐시 SELECT 2번 발생

미해결

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

[SELECT 2번 발생] 강의에 설명된 내용과 달리 저는 em.find(Member.class, 100L); 두 번 호출하였을 때 SELECT 문이 두 번 발생하였습니다. 혹시 설정 차이로 다른 결과가 나온 것일까요? 추가로 지금 확인해보니 tx.commit 이후에도 데이터베이스에 저장도 되지 않고, insert 쿼리가 나가지 않네요.. 어떤 문제에서 잘못된 것일까요? 전체 코드 보내드립니다. package hellojpa; import jakarta.persistence.EntityManager; import jakarta.persistence.EntityManagerFactory; import jakarta.persistence.EntityTransaction; import jakarta.persistence.Persistence; import java.util.List; public class JpaMain { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); EntityManager em = emf.createEntityManager(); EntityTransaction tx = em.getTransaction(); /** * 영속성 컨텍스트1 - 1차 캐시 */ try { // // 비영속 Member member = new Member(); member.setId(100L); member.setName("HelloJPA"); System.out.println("=== BEFORE ==="); em.persist(member); // 영속 System.out.println("=== AFTER ==="); Member member1 = em.find(Member.class, 100L); Member member2 = em.find(Member.class, 100L); System.out.println("result = " + (member1 == member2)); tx.commit(); } catch (Exception e) { tx.rollback(); } finally { em.close(); emf.close(); } } }

  • java
  • jpa
nick 댓글 2 좋아요 0 조회수 114

엔티티 직접 사용 - 외래키값 지연로딩

미해결

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

엔티티 직접 사용 - 외래키값에서 아래 JPQL은 지연로딩설정 해놨지만 where 에서 team에 대한 조건값이 있으니 즉시로딩 된걸로 이해하면 될까요?! select m from Member m where m.team = :team

  • java
  • jpa
Wendy Wendy 댓글 2 좋아요 0 조회수 72

org.fitness 라이브러리를 어떻게 받을 수 있나요

해결됨

클린 코더스: 실전 객체 지향 프로그래밍과 TDD 마스터 클래스

안녕하세요 클린 코더스 강의보면서 예제를 따라해보고 있는데 초반 function 강의 예제에 필요한 org.fitness 라이브러리가 받아지지 않는거 같습니다. 클래스 파일이 없으니 컴파일 에러가 터지는데, 라이브러리 파일 구할 수 있는 방법 없을까요? maven repository: https://mvnrepository.com/artifact/org.fitness/fitness 저장소: https://github.com/msbaek/fitness-example/tree/master

  • java
  • tdd
  • 객체지향
  • 클린-아키텍처
  • 클린코드-기획전
  • gradle
  • maven
이진우 댓글 2 좋아요 0 조회수 181

각 application.java에서 빈 스캔할때 차이

해결됨

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

안녕하세요 Transactional Outbox 모듈 적용 부분을 듣던중에 차이가 발생해서 질문드립니다. 강의에서는 이제 각 나눠진 기능마다 XXXAplication 클래스에 EntityScan과 EnableJpaRRepositories 애노테이션을 달아주는것만으로도 다른패키지에있는 outboxEventPublisher를 사용할 수 있는데 저는 인식을 못합니다. application클래스에 @componentScan(...) 까지 달아주고나서야 비로서 인식이 되기 시작하는데 혹시 뭐가 문제고 무슨 차이가 있는걸까요 ... 찾아봤는데 잘 안보입니다 ㅠㅠ

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
한국의일론매식기 댓글 2 좋아요 0 조회수 125

컴파일 파일 및 프로젝트 이름 관련 질문있습니다~

해결됨

실리콘밸리 엔지니어와 함께하는 Gradle

강의 잘 듣고 있습니다. 궁금한 점이 2가지 있는데요. 1. gradle 프로젝트를 생성하면 org/example/App.java가 기본값인거 같습니다. 이걸 프로젝트 생성 시점에서 원하는 명칭으로 변경할 수 있는지 궁금하구요 예) 최초 생성 시 com/회사명/Application.java 2. import된 파일 (강의 예시로는 math)이 .gradle 경로에 떨어지는데 이부분은 알알두면 어떤 상황에서 활용되는지 궁금합니다. (예를 들면 다운로드된 라이브러리는 폐쇄망 환경 같은 곳에 들고 가는데 이 경로도 마찬가지인지)

  • java
  • scala
  • gradle
  • scala-3
  • compiler
gto1997 댓글 2 좋아요 1 조회수 113

홀수 짝수 찾기 문제 질문

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 먼저 이렇게 코드를 짜도 정답이 되는지 알고 싶습니다. 또한, 강사님과 같이 삼항 연산자를 써야겠다는 효율적인 생각을 어떻게 할 수 있는지 그 방법을 알고 싶습니다.

  • java
  • 객체지향
방황소년 댓글 2 좋아요 0 조회수 95

인기 태그

인프런 TOP Writers

주간 인기글