inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

TreeSet을 사용하는 이유

미해결

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

안녕하세요! 저는 HashSet을 사용해서 풀었는데요! public int solution(int n, int k, int[] arr) { int answer = -1; // HashSet으로 변경 Set<Integer> set = new HashSet<>(); // 모든 3개 조합의 합을 HashSet에 추가 for (int i = 0; i < n; i++) { for (int j = i + 1; j < n; j++) { for (int l = j + 1; l < n; l++) { set.add(arr[i] + arr[j] + arr[l]); } } } // HashSet을 List로 변환 List<Integer> list = new ArrayList<>(set); // 내림차순 정렬 Collections.sort(list, Collections.reverseOrder()); // K번째 값 반환 if (list.size() >= k) { return list.get(k - 1); } return answer; } 커뮤니티 보니 treeSet을 사용하는 이유가 " 같은 숫자의 카드가 여러장 있을 수 있습니다."라고 하셨는데, 강의 내에 코드는 3개의 카드를 더한 값에 대한 중복 제거지, 각 카드 숫자에 대한 중복을 제거하는건 아니지 않나요..?? hashSet을 사용하는게 O(n3)로 시간복잡도가 더 나은 것 같은데 treeSet을 사용해야 하는 이유를 아직 이해 못했습니다 ㅠㅠ

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

jdbc 설정이후에 재접속 16:00

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예 /아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] 회원목록이 안뜹니다. org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-232] 라는 에러가 뜨네요.

  • java
  • spring
  • mvc
  • spring-boot
sh hhyeogi365 댓글 1 좋아요 0 조회수 204

JPA save 때 동일 컬럼이 두 번 선언되는 현상이 있습니다.

미해결

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

두 개의 테이블을 OneToOne으로 연관관계를 설정하여 JPA 로 account와 authority테이블을 한 번에 save하는 로직을 강의 내용을 응용하여 개발하고 있습니다. save를 통해 저장하려고 하면 insert 구문에 LOGIN_ID가 두 번 지정되어 쿼리가 날아가는 현상이 있는데 어느 부분이 잘못된 것인지 도움 부탁드립니다.. (쿼리문 예시 insert into LOGIN_ACCOUNT (LOGIN_ID, ~~~, login_id) select SCOPE_IDENTITY() AS GENERATED_KEYS', ~~~, form에서 입력받은 실제 id값) 아래는 소스 내용의 일부입니다.

  • java
  • spring
  • spring-boot
  • jpa
gao9512 댓글 1 좋아요 0 조회수 107

순수JDBC 문제

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예 /아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] 다 음 메서드에서 DataSourceutils가 빨간밑줄이 뜹니다. 어떤 조치를 취해야 하나요? 임포트를 임의로 넣어줘도 JDBC에만 빨간밑줄이 쳐집니다. import org.springframework.jdbc.datasource.DataSourceUtils; private Connection getConnection() { return DataSourceUtils.getConnection(dataSource); } private void close(Connection conn) throws SQLException { DataSourceUtils.releaseConnection(conn, dataSource); }

  • java
  • spring
  • mvc
  • spring-boot
sh hhyeogi365 댓글 1 좋아요 0 조회수 292

회원가입 테스트 오류

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 테스트는 초록불이 켜지는데 콘솔창에는 이런 내용이 뜹니다.. 이건 왜이런건가요? 어떻게 해결하죠? 현재 build.gradle는 이 상태 입니다

  • java
  • spring
  • mvc
  • spring-boot
이승호 댓글 1 좋아요 0 조회수 304

h2.sh 실행

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예 /아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] 윈도우 파워셀로 실행하려는데 chmod 755 명령어가 안 됩니다. 'chomod' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 라고 뜨는데 어떡하나요?

  • java
  • spring
  • mvc
  • spring-boot
sh hhyeogi365 댓글 1 좋아요 0 조회수 599

메타데이터의 위치에 대한 질문입니다.

해결됨

기초 탄탄! 독하게 시작하는 Java - Part 2 : OOP와 JVM

널널한 개발자님. 항상 잘 듣고 있습니다! 좋은 강의 감사합니다. 복습을 하던 도중 잘 이해가 안되는 부분이 있어 질문드립니다. 인스턴스의 메타데이터라 함은 강의 내용 중 해시코드, 오브젝트 나이, 락플래그를 말하는 것 같습니다. 강의 4분경에서 이런 메타데이터가 Klass word에서 참조하는 Metaspace에 저장되어 있다고 하셨습니다. 그리고 강의 6분경 핫스팟 VM 객체 Lock flag슬라이드 보거나, 실제 예제를 실행시켜 나온 결과(23:35)를 보면 Markword에도 해쉬파일과 락플래그가 있는 것으로 보입니다. Metaspace, Markword 둘 다 같은 인스턴스의 해시코드값(+락플래그)을 가지는 건가요? 그러면 Metaspace는 생성된 인스턴스 모두의 메타데이터를 가지는건가요? 새벽에 보느라 머리가 잘 안돌아가네요.. 긴 글 읽어주셔서 감사합니다!

  • java
  • 객체지향
  • jvm
  • data-structure
bynull 댓글 2 좋아요 0 조회수 262

h2 데이터베이스 경로 설정

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 이렇게 설정하고 연결을 눌러도 연결이 되지 않는 이유를 모르겠습니다.! 이런 오류가 뜨네요. ㅠ 윈도우 사용자입니다! 그리고 실행 자체를 cmd에서 명령어 입력 말고 설치하니 생긴 이 파일로 실행을 해도되는건가요?

  • java
  • spring
  • mvc
  • spring-boot
이승호 댓글 2 좋아요 0 조회수 450

포탈 프로젝트에 서버 코드에 에러가 뜨네요

미해결

[켠김에 출시까지] 유니티 캐주얼 모바일 MMORPG (M2)

포탈 프로젝트에 ELeavType이 없다고 에러가 뜨는데 어떻게 하면 되나요?

  • C#
  • unity
  • mysql
  • MMORPG
  • ef-core
  • asp.net-web-api
iamparkc 댓글 1 좋아요 0 조회수 152

아이템 수량에 관해서 질문입니다.

미해결

[켠김에 출시까지] 유니티 캐주얼 모바일 MMORPG (M2)

DB에서 겹쳐지는 아이템 하나의 컬럼에 수량 1000개를 그대로 저장하고 클라에게 1000개 그대로 보내서 1000개를 50개씩 20개로 쪼게는 부분은 클라딴에서 처리하는 방식은 안되는건가요?

  • C#
  • unity
  • mysql
  • MMORPG
  • ef-core
  • asp.net-web-api
iamparkc 댓글 1 좋아요 0 조회수 163

ClassNotFoundException, NoClassDefFoundError오류

미해결

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

[질문 내용] 스프링 부트와 JPA 활용 1편에서 제가 작성한 코드에서는 POST: http://localhost:8080/api/v1/members 해당 API가 잘 작동하는데 스프링 부트와 JPA 활용 2편에서 제공하신 강의 소스에서는 작동이 안되어서 문의드립니다. 해당 사진처럼 오류가 발생(상태코드 500) 아래 링크에 있는 내용대로 패키지 이름 변경은 다 했습니다. (javax -> jakarta) https://docs.google.com/document/d/1j0jcJ9EoXMGzwAA2H0b9TOvRtpwlxI5Dtn3sRtuXQas/edit?tab=t.0#heading=h.vfy9wirpglmx

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

volatile closed 적용해도 동시성 처리를 막을 수 없을까요?

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 여기에 질문 내용을 남겨주세요. 아래의 메서드는 결국 if(closed) 를 검증하기 위한 코드인데 synchronized가 아닌 volatile 키워드로 가시성만 보장해도 동시성 처리를 막을 수 있을 것 같다는 생각에 질문 드립니다! 아직까지 해당 부분이 미흡해서 다시 공부해보겠습니다! public synchronized void close() { if (closed) { return; } closeAll(socket, input, output); // shutdown closed = true; log("연결 종료: " + socket); }

  • java
  • 네트워크
  • 객체지향
열심히 공부하겠습니다! 댓글 1 좋아요 0 조회수 200

오류 관한 질문입니다.

해결됨

2. 유니티가 어려운 입문자를 위한 입문용 게임 제작

안녕하세요. 최근에 배우고 있는 수강생 입니다. 오류에 관한 질문이 있습니다. 강사님의 배우는 대로 코드를 작성했는데 NullReferenceException라는 오류 문자가 나왔습니다. 다시 코드를 작성 했는데 오류문자가 사라지지 않습니다. 어디가 문제인지 모르겠습니다.

  • unity
  • C#
kio4807 댓글 2 좋아요 0 조회수 315

InitMember 클래스 질문

해결됨

실전! Querydsl

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요. 강사님의 강의를 들으며 코드를 작성하던 도중 해결되지 않는 의문이 생겨 질문게시판에 글을 남깁니다. 강의를 보며 샘플데이터 추가를 위한 코드를 작성하고 나서 QuerydslApplication을 실행하면 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'initMember': Invocation of init method failed 이라는 오류코드가 뜨면서 QuerydslApplication실행이 종료 됩니다. 그런데 김영한 강사님이 올려주신 자료의 코드를 넣어서 실행해 보면 QuerydslApplication 실행이 잘 됩니다. 분명 똑같이 만들었는데 왜 이런 차이가 나는걸까요? 코드도 다른점이 없어보이는데 이러한 차이가 생기는 이유가 궁금합니다. 아래는 제가 작성한 코드(수정 전 샘플데이터)와 김영한 강사님의 코드(수정후 샘플데이터)입니다. package study.querydsl; import jakarta.annotation.PostConstruct; import jakarta.persistence.EntityManager; import jakarta.persistence.PersistenceContext; import lombok.RequiredArgsConstructor; import org.springframework.context.annotation.Profile; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; import study.querydsl.entity.Member; import study.querydsl.entity.Team; //샘플데이터 추가 /*수정 전 샘플데이터*/ /*@Profile("local") @Component @RequiredArgsConstructor public class InitMember { private final InitMemberService initMemberService; @PostConstruct public void init() { initMemberService.init(); } @Component static class InitMemberService { @PersistenceContext private EntityManager em; @Transactional private void init() { Team teamA = new Team("teamA"); Team teamB = new Team("teamB"); em.persist(teamA); em.persist(teamB); for (int i = 0; i < 100; i++) { Team selectedTeam = i % 2 == 0 ? teamA :teamB; em.persist(new Member("member" + i, i, selectedTeam)); } } } }*/ /*수정후 샘플데이터*/ @Profile("local") @Component @RequiredArgsConstructor public class InitMember { private final InitMemberService initMemberService; @PostConstruct public void init() { initMemberService.init(); } @Component static class InitMemberService { @PersistenceContext EntityManager em; @Transactional public void init() { Team teamA = new Team("teamA"); Team teamB = new Team("teamB"); em.persist(teamA); em.persist(teamB); for (int i = 0; i < 100; i++) { Team selectedTeam = i % 2 == 0 ? teamA : teamB; em.persist(new Member("member" + i, i, selectedTeam)); } } } }

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

전체 로드맵 알려주세여

미해결

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

안녕하세요. 김영한님 로드맵 3개(자바, 스프링, JPA) 가 있는거로 아는데 이거 통합해서 전체 강의 로드맵 짜서 순서 좀 알려주세요. 김영한님한테 직접 질문좀 해주세요.

  • java
  • spring
  • mvc
  • spring-boot
최연승 댓글 2 좋아요 0 조회수 437

getReference 사용시 쿼리 관련

해결됨

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요 강사님. 강의 수강 중에 질문 드려봅니다. 섹션9. 프록시 1편 11분경에, 코드를 그대로 따라 치고 실행해보았는데, 실제로 강의와 다르게 동작하는 거 같습니다. try { Member member = new Member(); member.setUsername("hello"); em.persist(member); em.flush(); em.clear(); Member findMember = em.getReference(Member.class, member.getId()); System.out.println("findMember.id = " + findMember.getId()); System.out.println("findMember.username = " + findMember.getUsername()); tx.commit(); } catch (Exception e) { tx.rollback(); } finally { em.close(); } 위와 같이 코드를 실행했는데요, Hibernate: select next value for Member_SEQ Hibernate: /* insert for hellojpa.Member */insert into Member (USERNAME, MEMBER_ID) values (?, ?) Hibernate: select m1_0.MEMBER_ID, t1_0.TEAM_ID, t1_0.name, m1_0.USERNAME from Member m1_0 left join Team t1_0 on t1_0.TEAM_ID=m1_0.TEAM_ID where m1_0.MEMBER_ID=? findMember.id = 1 findMember.username = hello 콘솔에서는 이렇게 나옵니다. findMember.id는 쿼리 실행 필요 없이 바로 출력 가능해야 할 거 같은데 쿼리가 먼저 실행되는 이유가 뭘까요? (username을 꺼내쓰는 부분을 제거하고 실행해봐도 쿼리가 실행되고 id를 출력합니다.)

  • java
  • jpa
  • getreference
  • findmember
  • getid
ymyun 댓글 2 좋아요 0 조회수 120

Stateless서버에서의 유저인스턴스

해결됨

[켠김에 출시까지] 유니티 방치형 키우기 게임 (M1 + C1)

session방식이 아닌 토큰방식을 쓰는데 유저 요청시 정보를 매번 DB에서 긁어와야 할까요? 아니면 Service마다 accountId를 키로해서 각 유저 정보를 저장해놓고 사용하는게 좋을까요? 메모리에 일부 정보를 저장해 두었다가 유저 요청시, DB에 접근하지 않고 검증할 수 있는 부분은 메모리 단에서 거르는 방식으로 DB접근 오버헤드를 줄이면 좋을거 같은데 유저 정보를 메모리에 들고있는다고 하면 Stateful방식을 쓰지 Stateless방식을 쓰는 이점이 있나 해서 질문드립니다

  • C#
  • unity
  • MMORPG
흑연 댓글 2 좋아요 0 조회수 208

order 테이블의 id값이 왜 4, 11인가요?

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 강의에서 order 테이블을 조회하면 id값이 4, 11로 나오는데 저는 1, 2로 나옵니다. 아무리 생각해봐도 4, 11로 나올 이유가 없어보이는데 왜 4,11로 나오는지 궁금합니다

  • java
  • spring
  • spring-boot
  • jpa
집이좋아 댓글 1 좋아요 1 조회수 117

퀘스트 누적 클리어 횟수에 대해 여쭤보고싶습니다.

미해결

[유니티 레벨 업!] 모듈식으로 개발하는 퀘스트&업적 시스템

퀘스트 시스템에 같은 코드네임의 퀘스트의 누적 클리어 횟수를 넣어주려고 하는데 어떻게 해야할까요 저장할때 가져오는 퀘스트는 클론이라 퀘스트에 정수 변수를 만든다음 추가하는 방식이 불가능하고 퀘스트가 저장될때마다 private JArray CreateSaveDatas(IReadOnlyList<Quest> quests, string key) { // 기존 데이터 로드 JArray saveDatas = LoadExistingSaveData(key); // 기존 세이브 파일에서 JArray 로드 foreach (var quest in quests) { Debug.Log("before " + quest); if (quest.IsSaveable) { Debug.Log("after " +quest); QuestSaveData saveData = quest.ToSaveData(); // 기존 데이터에서 같은 codeName 찾기 var existingData = saveDatas.FirstOrDefault(item => item["codeName"]?.ToString() == saveData.codeName); // 누적 퀘스트 카운트 계산 saveData.questClearCount = GetQuestClearCount(saveDatas, quest.CodeName); if (existingData != null) { saveData.questClearCount++; // 기존 데이터 갱신 existingData["questClearCount"] = saveData.questClearCount; } else { // 새 데이터 추가 Debug.Log("처음"); saveDatas.Add(JObject.FromObject(saveData)); } // 현재 퀘스트의 카운트 업데이트 quest.questClearCount = saveData.questClearCount; } } return saveDatas; } private JArray LoadExistingSaveData(string key) { if (File.Exists(saveFilePath)) { // 파일에서 JSON 데이터를 읽어옵니다. string jsonString = File.ReadAllText(saveFilePath); var root = JObject.Parse(jsonString); // 저장된 특정 경로 데이터(JArray)를 반환 if (root[key] != null) { return (JArray)root[key]; } } // 기존 파일이 없거나 해당 키가 없으면 빈 JArray 반환 return new JArray(); } private int GetQuestClearCount(JArray saveDatas, string codeName) { // JArray에서 해당 codeName을 가진 항목 찾기 var questData = saveDatas.FirstOrDefault(item => item["codeName"]?.ToString() == codeName); // 항목이 존재하고 "questClearCount"가 있을 경우 반환 if (questData != null && questData["questClearCount"] != null) { return (int)questData["questClearCount"]; } // 항목이 없거나 "questClearCount"가 없는 경우 기본값 반환 Debug.LogWarning($"Quest with codeName '{codeName}' not found or questClearCount is missing."); return 0; }기존의 세이브파일에서 참조해서 추가하는 방식으로는 다른요소로 저장할때마다도 추가가 됩니다. 계속 어떻게 수정해야할지 고민중이긴한데 어떻게 해야할지 모르겠습니다. 저장할 퀘스트의 id를 퀘스트DB에 있는 id와 비교해서 원본 퀘스트를 찾은 다음 그 퀘스트를 가져와서 원본 퀘스트의 변수를 수정해주는 방식이 좋을까요

  • unity
고우진 댓글 1 좋아요 0 조회수 109

kotlin jOOQ , 컴파일시 힙메모리 부족

해결됨

실전 jOOQ! Type Safe SQL with Java

안녕하세요 비슷한 이유로 queryDSL 에서 불편함을 가지고 있어 jOOQ 에 관심이 생겼습니다. 마침 이렇게 좋은 강의 만들어주셔서 정말 감사합니다. 다름이 아니라 kotlin 을 주로 사용해서 kotlin 으로 jOOQ 사용시 컴파일 단계에서 힙메모리 부족 현상이 생기는데 혹시 kotlin 으로 힙메모리 부족 현상을 겪으신 적 있으신가요 만약 있으시면 해결하신 지혜를 얻고 싶어 글 남깁니다 gradle 설정은 아래와 같이 했습니다 해결과정 동안 힙메모리 설정 추가하여 늘려봐도 메모리 부족 현상이 발생하네요 import org.jetbrains.kotlin.gradle.tasks.KotlinCompile val jooqVersion: String by extra("3.19.5") plugins { kotlin("jvm") version "1.9.25" kotlin("plugin.spring") version "1.9.25" id("org.springframework.boot") version "3.4.0" id("io.spring.dependency-management") version "1.1.6" id("nu.studer.jooq") version "9.0" } group = "com.example" version = "0.0.1-SNAPSHOT" java { toolchain { languageVersion = JavaLanguageVersion.of(21) } } repositories { mavenCentral() } dependencies { implementation("org.springframework.boot:spring-boot-starter-jooq"){ exclude(group = "org.jooq", module = "jooq") } implementation("org.jooq:jooq:$jooqVersion") // jOOQ implementation(project(":jOOQ-custom")) jooqGenerator (project(":jOOQ-custom")) jooqGenerator("org.jooq:jooq:$jooqVersion") jooqGenerator("org.jooq:jooq-meta:$jooqVersion") implementation("org.jetbrains.kotlin:kotlin-reflect") runtimeOnly("com.mysql:mysql-connector-j") testImplementation("org.springframework.boot:spring-boot-starter-test") testImplementation("org.jetbrains.kotlin:kotlin-test-junit5") testRuntimeOnly("org.junit.platform:junit-platform-launcher") } kotlin { compilerOptions { freeCompilerArgs.addAll("-Xjsr305=strict") } } tasks.withType<Test> { useJUnitPlatform() } val dbUser: String = System.getProperty("db-user") ?: "root" val dbPassword: String = System.getProperty("db-password") ?: "passwd" jooq { version.set(jooqVersion) configurations { create("sakilaDB") { generateSchemaSourceOnCompilation.set(true) jooqConfiguration.apply { logging = org.jooq.meta.jaxb.Logging.WARN jdbc.apply { driver = "com.mysql.cj.jdbc.Driver" url = System.getenv("DB_URL") ?: "jdbc:mysql://localhost:3306/sakila" user = dbUser password = dbPassword } generator.apply { name = "org.jooq.codegen.KotlinGenerator" database.apply { name = "org.jooq.meta.mysql.MySQLDatabase" excludes = "sys" } generate.apply { isDaos = true isRecords = true isFluentSetters = true isJavaTimeTypes = true isDeprecated = false } target.apply { directory = "src/generated" } strategy.name = "com.example.jooq.custom.generator.JPrefixGeneratorStrategy" } } } } } sourceSets { main { java { srcDirs("src/main/kotlin", "src/generated") } } }

  • java
  • sql
  • spring-boot
  • jooq
  • dsl
코틀린자바 댓글 2 좋아요 0 조회수 577

인기 태그

인프런 TOP Writers

주간 인기글