inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

임베디드 타입과 MappedSuperClass의 차이점이 궁금합니다.

해결됨

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 강의를 듣다가 생각나게 된 것이 앞서 배운 @MappedSuperClass가 생각이 났습니다. 이것도 각 엔티티에 공통된 속성을 정해줄 수 있었는데요. 어떤 차이점이 있는지 궁금합니다.

  • java
  • jpa
황희순 댓글 1 좋아요 0 조회수 115

Prisma schema 에서 relationship 관한 질문 이있습니다

미해결

인프런 클론코딩 Part 1: Next.js와 NestJS로 시작하는 실전 프로젝트

✅ 모든 질문들은 슬랙 채널에서 답변드리고 있습니다. 💡 ”로펀의 인프런 상담소” 슬랙 채널 가입하기 💡 평일중에는 퇴근 이후(저녁 7시)에 답변을 받아보실 수 있고, 주말중에는 상시 답변드리고 있습니다. 안녕하세요 . 강의 수강중 질문이 생겨서 여기에 이렇게 남깁니다. Courses 테이블에서 Lectures 테이블과 일대다 관계를 이렇게 해주셨는데요. model Course { id String @id @default(uuid()) slug String @unique title String shortDescription String? @map("short_description") description String? @map("description") thumbnailUrl String? @map("thumbnail_url") price Int @default(0) discountPrice Int? @map("discount_price") level String @default("beginner") instructorId String @map("instructor_id") isPublished Boolean @default(false) @map("is_published") createdAt DateTime @default(now()) @map("created_at") updatedAt DateTime @updatedAt @map("updated_at") sections Section[] lectures Lecture[] categories CourseCategory[] enrollments CourseEnrollment[] reviews CourseReview[] questions CourseQuestion[] instructor User @relation(fields: [instructorId], references: [id]) @@map("courses") } model Section { id String @id @default(uuid()) title String description String? order Int courseId String @map("course_id") createdAt DateTime @default(now()) @map("created_at") updatedAt DateTime @updatedAt @map("updated_at") lectures Lecture[] course Course @relation(fields: [courseId], references: [id], onDelete: Cascade) @@map("sections") } model Lecture { id String @id @default(uuid()) title String description String? order Int duration Int? isPreview Boolean @default(false) @map("is_preview") sectionId String @map("section_id") courseId String @map("course_id") videoStorageInfo Json? @map("video_storage_info") createdAt DateTime @default(now()) @map("created_at") updatedAt DateTime @updatedAt @map("updated_at") section Section @relation(fields: [sectionId], references: [id], onDelete: Cascade) course Course @relation(fields: [courseId], references: [id], onDelete: Cascade) activities LectureActivity[] @@map("lectures") } 궁금한점은 이미 저희가 나중에 DTO 에서 코스 테이블 레코드 를 가져오면 Sections 테이블과 이미 일대다 관계가 되어있기떄문에 Sections 테이블에서 레코드를 가져오면서 Sections 테이블이 이미 Lectures 와 일대다 관계가 되어있기 떄문에 코스 테이블에서 레코드 가져오면 섹션 테이블 안에 이미 렉쳐 레코드도 같이 따라오는데 코스 테이블에서 따리 중독 관계를 해두신 이유가 궁금합니다. 시간 내주셔서 감사합니다

  • aws
  • docker
  • next.js
  • nestjs
  • prisma
Gyubum Kim 댓글 1 좋아요 0 조회수 113

리턴값 관련질문

해결됨

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

좋은 강의 감사합니다! 함수(메서드) 선언과 호출 강의를 듣는중인데, 리턴값 관련해서 질문이 생겨서 글을 남기게되었습니다. 현재 리턴값이 있고, 없고의 차이를 크게 못느끼겠어서 질문을 남기게 되었습니다. 현재 이해한것은 리턴을 해주게 되면, 호출 한곳에 값을 돌려준다고 이해를 했는데, 리턴을 안하면 함수의 정의가 된곳에서 진행을 한다고 이해를 했는데, 이때 System.out.printIn(); 을 하면 출력이 되는것도 확인이 된는것을 봤습니다(17:45) 결과적으로 리턴값이 있고 없고의 차이를 크게 못느끼겠어서 이렇게 질문을 남기게되었습니다.

  • python
  • java
  • c
  • 정보처리기사
김명수 댓글 2 좋아요 0 조회수 149

비밀번호

미해결

자바 코딩테스트 - it 대기업 유제

package 인프런.시뮬레이션_복습01; import java.util.HashMap; import java.util.Map; public class 비밀번호 { public static class Point{ int row; int col; Point(int row,int col){ this.row=row; this.col=col; } } private static Map<Integer,Point> map; private static final int INF=3; private static int getDistance(int row1,int col1,int row2,int col2){ return (int)Math.pow(row1-row2,2) + (int)Math.pow(col1-col2,2); } private static boolean isValid(int dis){ //거리가 대각선 포함 이동시간이 1인 경우 if(dis<=2) return true; return false; } static class Solution { public int solution(int[] keypad, String password){ int time = 0; map=new HashMap<>(); for(int i=0;i<INF*INF;i++){ map.put(keypad[i],new Point(i/3,i%3)); } String[] inputs=password.split(""); /** * 시작 값 초기화 */ int nowX=map.get(Integer.parseInt(inputs[0])).row,nowY=map.get(Integer.parseInt(inputs[0])).col; for(int i=1;i<inputs.length;i++){ int x=Integer.parseInt(inputs[i]); int nRow=map.get(x).row; int nCol=map.get(x).col; if(nowX==nRow && nowY==nCol) continue; if(isValid(getDistance(nowX,nowY,nRow,nCol))){ time++; }else{ time+=2; } nowX=nRow; nowY=nCol; } return time; } public static void main(String[] args){ Solution T = new Solution(); System.out.println(T.solution(new int[]{2, 5, 3, 7, 1, 6, 4, 9, 8}, "7596218")); System.out.println(T.solution(new int[]{1, 5, 7, 3, 2, 8, 9, 4, 6}, "63855526592")); System.out.println(T.solution(new int[]{2, 9, 3, 7, 8, 6, 4, 5, 1}, "323254677")); System.out.println(T.solution(new int[]{1, 6, 7, 3, 8, 9, 4, 5, 2}, "3337772122")); } } } 해시맵을 사용하여 풀었는데 이 방법도 시간 복잡도 혹은 공간 복잡도면에서 괜찮나요??

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

배포 시 테스트 코드가 돌아갈때 사용하게 될 RDB 셋팅에 관하여..

해결됨

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

안녕하세요. 강의 정말 잘 들었습니다. 도움이 많이 되어서 수강평은 나중에 꼼꼼히 작성해볼 생각입니다~! ====================== 바쁘시면 이 부분만 읽으셔도 됩니다. ============= 배포 시 jenkins server에서 실제 서버에 배포할때 테스트가 돌아갈텐데 jenkins server에 compose를 통해 작동 하게 될 mysql에 DB schema insert 작업을 해서 동일하게 구조를 맞추고 테스트가 돌아가게 하는 게 좋은 생각일 까요? =========================================================== [세부 사항] 일단 테스트 코드가 local mysql에서 돌아가는 걸로 이해 했습니다. 배포 시 jenkins server에서 실제 서버에 배포할때 테스트가 돌아갈텐데 jenkins server에 compose를 통해 작동 하게 될 mysql에 DB schema insert 작업을 해서 동일하게 구조를 맞추고 테스트가 돌아가게 하는 게 좋은 생각일 까요? 현재 아직 jenkins 배포를 하고 있지는 않고 소스코드 개발중이라 머리속으로만 생각하는 상태입니다. 토비님 의견은 어떠신가요.....?

  • java
  • spring
  • spring-boot
  • jpa
  • 리팩터링
  • ddd
  • deployment
YongIl Park 댓글 2 좋아요 1 조회수 125

/.well-known/appspecific/com.chrome.devtools.json 에러에 대해서

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 안녕하세요. 영한님, 수업을 듣다가 F12 개발자 도구를 켜놓고 실행하고 있었는데 콘솔 창에 아래와 같은 예외가 발생합니다. 개발자 도구를 끄면 안 뜨더라구요. 만약 현업에서 사용한다면 이걸 따로 처리해야하는지 궁금합니다. public class WellKnownServlet implements HttpServlet 이런식으로요. ------------------------------------------ was.httpserver.PageNotFoundException: request url= /.well-known/appspecific/com.chrome.devtools.json at was.httpserver.ServletManager.execute(ServletManager.java:41) at was.httpserver.HttpRequestHandler.process(HttpRequestHandler.java:39) at was.httpserver.HttpRequestHandler.run(HttpRequestHandler.java:24) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at java.base/java.lang.Thread.run(Thread.java:1583)

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

PDF 다운로드 어디서 할수있나요

해결됨

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

PDF 다운로드 어디서 할수있나요

  • python
  • java
  • c
  • 정보처리기사
ssy1310 댓글 2 좋아요 0 조회수 125

테스트코드 메서드명 한글

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 영한님 안녕하세요. 테스트 코드 작성하실때 메서드명을 한글로 기재하시던데 실제 실무에서 테스트 코드 작성하실때도 한글로 작성하셨었나요?

  • java
  • spring
  • mvc
  • spring-boot
backendman 댓글 2 좋아요 0 조회수 247

궁금한게 있습니다!

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

이렇게 3단분리를 할때 처음부터 코드를 작성할때 이렇게 3가지 역할을 분리해서 각각 구현해야지! 라고 다 미리 설정해두고 코드를 짜는건가요 아니면 controller 에 일단 다 구현해놓고 그다음 분리해서 구현하는건가요?? 전자면 미리 생각하게 많아 뭔가 복잡해보여서요 ㅜ

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
eovnfjfpa 댓글 2 좋아요 0 조회수 88

문의

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 군대에서 김영한 강사님의 강의를 듣고 있는 병사입니다. 강의를 듣는 것이 쉬운 환경은 아니지만 열심히 듣고자 하여 조금씩 노력하고 있습니다. 처음으로 코딩 강의를 듣는 것인데 책으로 배우는 것과 정말 많은 장점이 있는 것을 알았고 재미도 있어 잘 듣고 있다는 말씀 드리고 싶었습니다. 다만, 해당 강의와 스프링 기본편 강의를 저번에 이벤트로 3개월동안 무료로 들을 수 있게 해주셨는데 제 노력이 부족해서 기간 안에 다 듣지 못했습니다. 괜찮으시다면 해당 기간을 연장해주실 수 있으실지 여쭤보고 싶습니다. 정말 배우고 싶은 의지가 있습니다. 관련하여 강사님의 의견 들어보고 싶습니다. 기간이 지나면 답변글을 확인할 수 있을지 모르겠지만 이메일 남겨두겠습니다. scentofsharon@naver.com 감사합니다

  • java
  • 객체지향
scentofsharon 댓글 1 좋아요 0 조회수 123

File Upload 테스트 중 에러 발생 및 디버깅 방법

미해결

인프런 클론코딩 Part 1: Next.js와 NestJS로 시작하는 실전 프로젝트

파일 업로드 기능 구현 후, Dropzone을 통해 업로드를 진행하고 [강의 수정] 페이지에서 ⨯ [Error: Body exceeded 1 MB limit. To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit ] 이런 에러를 만났습니다. 해결방안 next.config.tx 파일에 serverActions에서 보내는 bodySizeLimit를 300MB로 설정해주세요. 기본이 1MB 라고 합니다.

  • aws
  • docker
  • next.js
  • nestjs
  • prisma
우푸 댓글 1 좋아요 0 조회수 121

build 시 테스트 TASK 에러 발생

해결됨

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

1. 현재 학습 진도 몇 챕터/몇 강을 수강 중이신가요? 섹션3[2주차]설득력을 높이는 수치화 기술 11강 2-4 프로젝트 기본 설정하기 & 로컬 모니터링 인프라 설정 2. 어려움을 겪는 부분 어느 부분에서 막히셨나요? 14:08분 build 시 test 시 런칭 시점에 테스트를 모두 통과하도록 변경했다고 하는데, 실제 build시에 테스트 task 수행 시 DB에 연결할 수 없는 오류가 발생합니다 docker compose up 후 bootRun시 localhost:8080/api/chapter2/boards시 응답 값은 제대로 나옵니다 3. 시도해보신 내용 문제 해결을 위해 어떤 시도를 해보셨나요? 에러가 발생했다면 어떤 에러인가요? EventJoinWithExternalApiUpdateFacadeTest > 외부 API 호출과 DB 업데이트 불일치 테스트 FAILED java.lang.AssertionError at EventJoinWithExternalApiUpdateFacadeTest.java:103 SimpleEventListenerTest > 현재 코드 구조에서 @TransactionalEventListener는 작동하지 않는다 FAILED java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate.java:143 Caused by: org.springframework.beans.factory.BeanCreationException at AbstractAutowireCapableBeanFactory.java:1770 Caused by: jakarta.persistence.PersistenceException at AbstractEntityManagerFactoryBean.java:421 Caused by: org.hibernate.exception.JDBCConnectionException at SQLExceptionTypeDelegate.java:49 Caused by: java.sql.SQLNonTransientConnectionException at SQLError.java:111 Caused by: org.springframework.beans.factory.BeanCreationException at AbstractAutowireCapableBeanFactory.java:1770 Caused by: jakarta.persistence.PersistenceException at AbstractEntityManagerFactoryBean.java:421 Caused by: org.hibernate.exception.JDBCConnectionException at SQLExceptionTypeDelegate.java:49 Caused by: java.sql.SQLNonTransientConnectionException at SQLError.java:111 SimpleEventListenerTest > @TransactionalEventListener는 활성 트랜잭션이 필요하다 FAILED java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate.java:143 Caused by: org.springframework.beans.factory.BeanCreationException at AbstractAutowireCapableBeanFactory.java:1770 Caused by: jakarta.persistence.PersistenceException at AbstractEntityManagerFactoryBean.java:421 Caused by: org.hibernate.exception.JDBCConnectionException at SQLExceptionTypeDelegate.java:49 Caused by: java.sql.SQLNonTransientConnectionException at SQLError.java:111 Caused by: org.springframework.beans.factory.BeanCreationException at AbstractAutowireCapableBeanFactory.java:1770 Caused by: jakarta.persistence.PersistenceException at AbstractEntityManagerFactoryBean.java:421 Caused by: org.hibernate.exception.JDBCConnectionException at SQLExceptionTypeDelegate.java:49 Caused by: java.sql.SQLNonTransientConnectionException at SQLError.java:111 SimpleEventListenerTest > @EventListener는 트랜잭션이 없어도 정상 동작한다 FAILED java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate.java:143 Caused by: org.springframework.beans.factory.BeanCreationException at AbstractAutowireCapableBeanFactory.java:1770 Caused by: jakarta.persistence.PersistenceException at AbstractEntityManagerFactoryBean.java:421 Caused by: org.hibernate.exception.JDBCConnectionException at SQLExceptionTypeDelegate.java:49 Caused by: java.sql.SQLNonTransientConnectionException at SQLError.java:111 Caused by: org.springframework.beans.factory.BeanCreationException at AbstractAutowireCapableBeanFactory.java:1770 Caused by: jakarta.persistence.PersistenceException at AbstractEntityManagerFactoryBean.java:421 Caused by: org.hibernate.exception.JDBCConnectionException at SQLExceptionTypeDelegate.java:49 Caused by: java.sql.SQLNonTransientConnectionException at SQLError.java:111 현재 작성하신 코드를 공유해주세요 이렇게 구체적으로 알려주시면, 더 정확하고 도움이 되는 답변을 드릴 수 있습니다!

  • java
  • spring
  • mysql
  • redis
  • 이력서
rirws966 댓글 3 좋아요 0 조회수 145

CKE Editor 관련 버전 질문

미해결

인프런 클론코딩 Part 1: Next.js와 NestJS로 시작하는 실전 프로젝트

이런 문제가 발생되어 버전이 일치하지 않아 설치가 안되어 진도를 나가지 못하고 있습니다..

  • aws
  • docker
  • next.js
  • nestjs
  • prisma
우푸 댓글 2 좋아요 0 조회수 113

이상한 자막이 계속 보입니다.

미해결

인프런 클론코딩 Part 1: Next.js와 NestJS로 시작하는 실전 프로젝트

인프런 자체 자막은 아니라서 영상속에 포함이 된거 같은데 제거 가능할까요 보이는 자막은 후반 부에 대부분 보이며 지금 보이는 부분은 [FE] 커리큘럼 관리 구현 부분 입니다. 관련 이미지 첨부합니다 .

  • aws
  • docker
  • next.js
  • nestjs
  • prisma
홍ㅇ 댓글 1 좋아요 0 조회수 88

강의자료 확인 요청

미해결

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

5. 회원 관리 예제 - 웹 MVC 개발.pdf 내의 소스중 MemberForm클래스의 create() 메소드 내에 MemberService memberService= new MemberService();가 빠져있습니다.

  • java
  • spring
  • mvc
  • spring-boot
YJS 댓글 2 좋아요 0 조회수 90

데이터베이스가 초기화되는 것 같아요

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 2번 멤버(HelloB)를 추가하는 코드를 실행한 뒤에 h2에서 조회해보면 1번 멤버는 없고 2번만 나와요

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

reader.readLine() == null 의미

해결됨

기초 탄탄! 독하게 시작하는 Java Part 3(하) : 소켓과 파일 I/O

TCP 에코 서버 실습하던 와중에 반복문 조건에서 궁금한게 있어서 질문 남김니다. while((msg = reader.readLine()) != null) { // 로직 } Q. 클라이언트가 연속적으로 msg를 보낼 의도가 있고 그렇게 보낸다고 해도 저 서버쪽의 반복문 안에서 로직을 처리하고 다시 조건을 확인하는 cycle이 엄청 빠를텐데 1. 만약 클라이언트는 여러번 메시지를 보낼 꺼지만, 서버입장에선 1cycle을 돌고 .readLine()으로 했을 때 reader(inputStream)가 비어있으면 null이지 않나요?? 2. 저런 조건에서 null 조건이 성립하려면 EOF일 때만 null이되서 반복문을 빠져나오는건가요? 3. 아니면 애초에 null일 상황은 없지만 무한 루프를 만들기 위한 장치 인가요??

  • java
  • 네트워크
  • tcpsocket
insub2004 댓글 2 좋아요 0 조회수 97

7.6 챕터에서 클라이언트 컴포넌트로 바꾼 이유가 궁금합니다.

해결됨

한 입 크기로 잘라먹는 Next.js

이전 챕터에서 클라이언트 컴포넌트에 대해 다뤘을때 서버에서 사용할 수 없는 훅을 사용할 경우 클라이언트 컴포넌트를 사용해야한다고 이해하였습니다. 그 중 하나가 useEffect이고 그 이유는 useEffect는 컴포넌트가 마운트 되었을 때 즉, 브라우저에 렌더링 되었을 때 실행되기 때문이라고 이해하였습니다. 제가 생각했을 때에는 useActionState 훅은 서버에서 실행되어도 상관 없는 훅이라고 생각하는데 맞는지 궁금합니다. 만약 맞다면 useEffect 훅을 사용하지 않고 useActionState만 사용한다면 서버 컴포넌트로 사용할 수 있는 것인지도 궁금합니다.

  • react
  • typescript
  • next.js
김민규 (강근) 댓글 2 좋아요 0 조회수 91

4-2 플러터 실행 안되는 문제~

해결됨

비개발자 4주만에 수익화 서비스 만들기: AI 바이브코딩 웹 + 앱 ALL IN ONE

start medium phone api 36 디바이스를 추가하고 실행시키면 첨부한 이미지처럼 검은 화면이 나오거나 안드로이드 폰 배경화면만 나오는데 이건 왜 그런걸까요? 우측하단 디바이스 선택하는 곳에서 웹으로는 잘 실행이 됩니다. flutter doctor로 검사해도 별다른 문제가 없는데 커서로 물어보면 주구장창 flutter doctor -v 테스트만 하네요~ ㅜㅜ

  • flutter
  • next.js
  • cursor
  • supabase
  • 바이브코딩
포지셔너 댓글 2 좋아요 0 조회수 178

getReference()하면 영속성 컨텍스트에 속하게 되나요?

미해결

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

강의 36분 10초 경부터 관련해서 질문드립니다. 해당 시점에서 refMember는 getReference()하였으므로 프록시입니다. 그리고 바로 다음에 em.detach(refMember) 하여 영속성 컨텍스트에서 끄집어 낸다고 하시는데요. 그렇다면 getReference()하여 생성되는 프록시도 영속성 컨텍스트에 속하게 된다는 말씀인건가요?

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

인기 태그

인프런 TOP Writers

주간 인기글