묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
Yield 를 사용한 후 currentThread
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. public void run() { while (!Thread.interrupted()) { if (jobQueue.isEmpty()) { Thread.yield(); continue; } ... }위에 코드에서 Yield 를 사용하면 그 쓰레드가 양보를 해서 다시 스케쥴러로 들어간다고 하셨는데, 그러면 Thread.yield(); 가 실행이 된 후에, 다시 CPU 가 이 쓰레드를 실행시키기 전까지 그 다음 줄의 continue 코드는 실행되지 않고 멈춰있는 상태라고 생각하면 될까요? 그렇다면 쓰레드는 CPU 가 다시 실행시킬 시점에 몇번째 라인까지 실행을 했는지 기억하고 있다가 CPU 에게 알려주는 건가요? 감사합니다.
-
해결됨김영한의 실전 자바 - 기본편
기본형은 immutable, 참조형은 mutable?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]결국, 기본형은 immutable, 참조형은 mutable 인건가요?
-
해결됨김영한의 실전 자바 - 중급 1편
Instant.now() 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.Instant.now() 메서드가 1970년 1월 1일 0시 0분 0초(UTC 기준)부터 현재까지 경과한 초(나노초)를 갖는 Instant 객체를 생성해서 참조를 반환한다고 보면 될까요?
-
미해결김영한의 실전 자바 - 중급 1편
날짜와 시간 Instant에 대한 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.제가 만약에 글로벌한 서비스를 시작해서 미국에서 접속하면 미국의 시간을 보여주고 한국에서 접속하면 한국의 시간을 보여줄 때는 ZonedDateTime을 쓰고서버에서 로그를 (미국에서 접속하든 한국에서 접속하든) 일관되게 남기고 싶다면 이때 Instant를 쓰면 되는 걸까요?만약 미국 사람은 미국 시간으로 로그를 남기고, 한국 사람은 한국 시간으로 로그를 남긴다고 하면 로그의 순서를 따져야 할 때 미국 시간을 한국 시간으로(또는 한국 시간을 미국 시간으로) 변환 해서 순서를 비교해야 하기 때문에 Instant를 사용하는게 좋다는 걸까요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
강의가 올라온지 5년이지났는데
너무 잘 알려주셔서 열심히 듣고있는데 이제 강의가 처음 올라온 날짜가 2019년도잖아요?그러면 이제 5년이 지난건데 그 사이에 변경된 점들은 특별히 없을까요?강사님이 요즘은 주로 이렇게 씁니다 라고 하셔서 그렇구나 하다가 강의의 요즘이 2019년이라는 생각에 질문글 남겨봅니다.
-
해결됨김영한의 실전 자바 - 중급 1편
try - catch 에서 catch() 안에 객체 이름 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요.궁금증이 생겨서 질문을 남깁니다.예외를 잡아서 처리하는 코드를 보던 중, 영한님이 try 한다음 catch 부분 에서 MycheckedEception e 이렇게 하는것을 볼수 있는데요.다른 catch의 객체 변수 이름을 보면 "e"라고 한 것을 확인할 수 있었습니다.catch에서 Exception예외 처리 로직의 이름을 지을때 'e' 라는 변수가 통용 되는 것인가요? 아니면 다른 변수 이름이 더 있나요?답변 부탁 드립니다.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
첫구매 자료파일
지금 비전공자이고ㅜㅜ막판에 급하게만 계속 쳐서 3번째 실기떨어졌습니다정말 마지막으로 붙고싶어서 결제했습니다ㅜ혹시 문제파일pdf들이 따로있나요??
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
30분 String val
main 아래에 있는 new Car(Spark)에서 'Spark'가 자식에 있는 Car(String val)밖에 들어갈 곳이 없다고 하셨는데, 자식의 두번째에 있는 String get Name(String val)에는 같은 String val 인데 왜 못들어가나요?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
while 구문에 a++ 이면 왜 6까지 가나요?
16:31에서 6까지 간다고 했는데, a가 6이면 while식을 이미 조건 충족하지 않아서 식 진행이 안돼야하는 거 아닌가요? a가 6인데 뒤에 식을 이미 진행 해버린다는 게 무슨 말인지 모르겠어요.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
비교연산자 반복문+조건문에서 count에 대한 질문
count ++의 의미를 제대로 모르겠네요, count를 썼을 때는 앞의 조건들이 일치하는 값의 갯수를 적어주는 거 같은데, ++면 1씩 더해줘라 이런뜻이니ㅠ 최종 카운트갯수에 1을 더해서 최종 답을 적으란 말도 아니고, count + = i ; 이런 것도 있네요ㅠ 설명 부탁드립니다.
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
temurin 21버전 project JDK misconfigured 뜨면 사용 못하나요?
새 프로젝트를 만들고 setup jdk버튼을 눌러 테뮤린21을 다운받았습니다. 프로젝트 스트럭쳐에서 테뮤린이 적용되었는데 빨간색이고, 홈화면엔 misconfigured가 떠있다면 못쓴다는 의미일까요?그렇담 대신에 오라클오픈22 jdk를 사용하면되나요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
pom.xml 작성 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]2024 버전 최근 소스코드를 복붙해서 javax 부분도 jakarta로 변경했는데 빨간 글자 부분에서 막혀서 어찌해야 할 지 모르겠네요ㅠ
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
강의 이미지에 대해 질문 있습니다.
그림에서 main 스레드 안에 CPU 코어 1이 있는데 이 상황을 CPU 코어 1에 main 스레드가 할당 됐고 CPU 코어 1은 main 스레드의 스택 영역과 main 스레드가 속해 있는 프로세스의 코드, 데이터, 힙 영역에 접근해서 값을 가져다가 연산한다 라고 이해를 하면 될까요? CPU 내부에 존재하는 레지스터와 위 이미지의 캐시 메모리는 역할이 다르다고 보면 될까요?
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
자바 스레드와 커널 스레드에 대해 질문 있습니다.
기존 Java의 스레드 모델은 Native Thread로, Java의 유저 스레드를 만들면 Java Native Interface(JNI)를 통해 커널 영역을 호출하여 OS가 커널 스레드를 생성하고 매핑하여 작업을 수행하는 형태로 알고 있습니다.앞서 얘기 해주신 Thread를 상속해서 만든 스레드와 Runnalbe을 사용해서 만든 스레드가 Java의 유저 스레드인지 궁금합니다.Thread thread1 = new Thread(runnable) 이런식으로 스레드를 생성 했을때 메모리의 힙 영역에 thread1이 저장되고 thread1을 위한 스택 영역이 생성된다고 보면 될까요?OS가 생성한 커널 스레드는 메모리 어디에 저장 되는지 궁금합니다.JVM은 JNI라는 기술을 사용해 자바의 유저 스레드와 커널 스레드를 매핑 해주는 작업만 해주고 이후에 스레드 관리는 OS가 하는건지 궁금합니다. 스레드를 생성할때마다 해당 스레드를 위한 스택 영역이 생성된다고 하셨는데 이때 커널 스레드를 위한 스택도 만들어지는 건지 아니면 커널 스레드가 유저 스레드의 스택 영역을 가져다 쓰는건지 궁금합니다.
-
미해결자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]
스레드 라이브러리는 커널과 같은 역할을 하지 못하나요?
강의와 다른 질의응답을 확인하였을 때, 사용자 수준에서 사용자 레벨 스레드 생성을 스레드 라이브러리가 관리하고, 관리의 범위는 스레드의 생성 및 소멸, 스케쥴링, 컨텍스트 스위칭을 할 수 있다고 말씀해주셨습니다! 그런데 다대일 스레드 매핑 모델의 특징에서 한 프로세스에 속해있는 사용자 수준 스레드들 중 하나가 block되면 프로세스 전체가 block이 되는데, 이는 커널에서 프로세스가 가지고 있는 개별적인 스레드를 인지하지 못하고, 그냥 하나의 스레드로 인지해서 대체할 스레드를 찾지 못함이라고 질의응답에서 확인 하였는데요, 강의 내용대로 스레드 라이브러리가 사용자 스레드를 관리하기 위해 많은 작업을 하고 있는데, 사용자 스레드 라이브러리에서 사용자 수준 스레드 중 일부가 블락되었을 때 커널 대신 다른 대기 중인 스레드를 ready > run 상태로 변경할 수는 없는 건가요?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
생성자를 언제 접근하는지 존재하는지 안하는지 구분이 헷갈립니다.
문제풀때 부모, 자식 생성자가 둘다있어도 자식만 실행하는경우, 부모부터 실행하고 자식에게 내려오는경우, static 예외경우를 쉽게 판별하는방법이 있을까요?... 풀다보니 처음에 생성자생성되는부분에서 자꾸 틀립니다
-
해결됨김영한의 실전 자바 - 중급 1편
네트워크 ex0 코드를 이렇게 개선하는게 옳은 방법인가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요.켈리어몬트님 꺼 답변을 해주고 나서, 저의 글을 보면서,어? 라는 의문이 들었고, address을 불변 으로 변경해 보자라는 생각이 들어서, 변경해 보았습니다근데 만들다 보니 Data 불변으로 바꾸고 싶다는 생각이 들고, 하다 보니 , 네트워크 서비스 클래스를 수정 하게 되던 데요.네트워크 서비스에 클래스에 객체를 생성 하는게, 옳은 방법인가요?수정withMessage가 setter로 되있어서, new Data(@@)으로 변경수정2이름 이상해서 사진 변경(어제 바꾼건데, 귀찮아서 지금 올림.)추가1MainV0은 똑같습니다. 추가2불변에 반환 값 꼭 넣으시길 바랍니다.. 변하는지 확인 할려고, 확인 했다가 고생함..Data , AddressNetworkClientV0 , NetworkServiceV0 답변 부탁 드립니다.
-
미해결김영한의 실전 자바 - 중급 1편
참조값을 확인하려면 hashCode() 메서드를 사용하면 될까요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]String d = new String("TEST"); String e = new String("TEST");각각의 참조값이 다르게 생성되어야 함에도 System.out.println(d.hashCode()); System.out.println(e.hashCode());해보면 결과값은 동일한 해쉬값이 나옵니다. 동일성 비교는 false, 동등성 비교는 true가 되고요.문자열 리터럴일 경우 문자열 풀을 사용하는 것은 이해가 되었는데 객체생성도 문자열에서는 동일한 문자열 풀을 사용하는지 궁금해서 질문드립니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
양방향 연관관계에서 양쪽에 값 설정 관련
순수 객체 상태를 고려하면 멤버의 팀을 A -> B로 변경한다고 했을 때, 팀 B에 멤버를 추가하는 것 뿐만 아니라 팀 A에서 멤버를 제거하는 작업도 동시에 해줘야 하는거 아닌가요..?public void changeTeam(Team team) { this.getTeam().getMembers().remove(this); this.team = team; team.getMembers().add(this); }
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
MemberRepositoryTest 오류
Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] due to: Unable to determine Dialect without JDBC metadata (please set 'jakarta.persistence.jdbc.url' for common cases or 'hibernate.dialect' when a custom Dialect implementation must be provided)org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] due to: Unable to determine Dialect without JDBC metadata (please set 'jakarta.persistence.jdbc.url' for common cases or 'hibernate.dialect' when a custom Dialect implementation must be provided) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1806) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:600) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) at app//org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) at app//org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at app//org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) at app//org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:205) at app//org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:954) at app//org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:625) at app//org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754) at app//org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:456) at app//org.springframework.boot.SpringApplication.run(SpringApplication.java:335) at app//org.springframework.boot.test.context.SpringBootContextLoader.lambda$loadContext$3(SpringBootContextLoader.java:137) at app//org.springframework.util.function.ThrowingSupplier.get(ThrowingSupplier.java:58) at app//org.springframework.util.function.ThrowingSupplier.get(ThrowingSupplier.java:46) at app//org.springframework.boot.SpringApplication.withHook(SpringApplication.java:1463) at app//org.springframework.boot.test.context.SpringBootContextLoader$ContextLoaderHook.run(SpringBootContextLoader.java:553) at app//org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:137) at app//org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:108) at app//org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:225) at app//org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:152) at app//org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:130) at app//org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:191) at app//org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:130) at app//org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:260) at app//org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:228) at app//org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:289) at app//org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:291) at app//org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:247) at app//org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97) at app//org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) at app//org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70) at app//org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191)Caused by: org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] due to: Unable to determine Dialect without JDBC metadata (please set 'jakarta.persistence.jdbc.url' for common cases or 'hibernate.dialect' when a custom Dialect implementation must be provided) at app//org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:276) at app//org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:238) at app//org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:215) at app//org.hibernate.boot.model.relational.Database.<init>(Database.java:45) at app//org.hibernate.boot.internal.InFlightMetadataCollectorImpl.getDatabase(InFlightMetadataCollectorImpl.java:221) at app//org.hibernate.boot.internal.InFlightMetadataCollectorImpl.<init>(InFlightMetadataCollectorImpl.java:189) at app//org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:171) at app//org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:1431) at app//org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1502) at app//org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:75) at app//org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:390) at app//org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) at app//org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) at app//org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:366) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1853) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1802) ... 32 moreCaused by: org.hibernate.HibernateException: Unable to determine Dialect without JDBC metadata (please set 'jakarta.persistence.jdbc.url' for common cases or 'hibernate.dialect' when a custom Dialect implementation must be provided) at app//org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.determineDialect(DialectFactoryImpl.java:191) at app//org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.buildDialect(DialectFactoryImpl.java:87) at app//org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.getJdbcEnvironmentWithDefaults(JdbcEnvironmentInitiator.java:152) at app//org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.getJdbcEnvironmentUsingJdbcMetadata(JdbcEnvironmentInitiator.java:362) at app//org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:123) at app//org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:77) at app//org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:130) at app//org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:263) ... 47 more 에러가 길어서 하나만 붙였습니다.