묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
DataSourceUtils import가 안돼요.
[질문 내용]저는 이클립스 4.2 , JDK17버전을 사용하고 있습니다.근데 datasource 연결하는데import가 되지 않습니다..private Connection getConnection() { return DataSourceUtils.getConnection(dataSource); }
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
회원 가입 시 member
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. public Long join(Member member){ validateDuplicateMember(member); System.out.println(member.getId()); memberRepository.save(member); System.out.println(member.getId()); return member.getId(); }위 코드는 멤버 가입 시 MemberService의 join 메소드 입니다.member의 아이디가 부여되는 시점은 memberRepository.save(member);가 호출되어 저장이 되는 시점입니다.위 코드에서 return member.getId();의 member는 컨트롤러에서 넘어온 member왜 같은 인스턴스라고 생각됩니다. 1. memberRepository.save(member);가 아닌member = memberRepository.save(member); 2번의 코드의 경우 id가 생긴 member를 다시 member에 저장하게 되어 member.getId()를 호출하면 아이디가 나오는 것이 맞다고 생각되는데 1번처럼 코드를 작성해도 member에 id가 왜 저장되어 있는지 궁금합니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
em.find 관련 질문입니다
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 findMember1 = em.find(Member.class, 101L); Member findMember2 = em.find(Member.class, 101L); tx.commit(); } catch (Exception e) { tx.rollback(); } finally { em.close(); } emf.close(); } } 위 코드를 실행하면 select 쿼리가 한번만 나가야 하는데 저 같은 경우는 두번 나가고 h2에서 id가 101인 엔티티도 사라집니다. 왜 그런가요? 아래는 실행했을 때 로그에 뜨는 쿼리입니다 Hibernate: select m1_0.id, m1_0.name from Member m1_0 where m1_0.id=? Hibernate: select m1_0.id, m1_0.name from Member m1_0 where m1_0.id=?
-
미해결스프링 시큐리티 OAuth2
id_token과 access_token의 개념에 대하여
안녕하세요. scope에 openid를 포함하면 id_token을 발급 받을 수 있는데요. 이 id_token과 access_token의 정확한 사용 용도가 헷갈립니다.제가 이해하는 바가 맞는지 확인 부탁드립니다. 인증 : 사용자가 유효한 사용자인지 판단하는 것인가 : 사용자가 해당 기능을 사용할 권한이 있는지 판단하는 것 사용자 인증 관점에서 인증이 통과(scope에 openid가 있는 경우)하면 access_token과 id_token을 받습니다. 인증만이 필요한 경우라면 id_token에 있는 사용자 정보로 확인하면 되나요?만약 제가 개발한 서비스가 있고 사용자별 권한의 차등이 없는 경우 세션 없이 인증을 유지하기 위해서는 로그인 후 발급받은 이 id_token을 들고 다니면서 id_token값으로 토큰의 값 유무와 만료시간 등 으로 유효 사용자를 확인하면 되나요?토큰의 값으로만 확인해도 되는지 아니면 jwt에서 제공되는 어떤 validation 함수같은걸로 우선 위변조를 확인한후 위변조가 없다는것이 확인된 후에 값을 비교해서 사용하면 되는지 궁금합니다. 그리고 만약 위의 인증을 access_token 으로 한다면 access_token은 원래 태생이 인가(권한)이기 때문에 userinfo 엔드포인트를 호출하여 사용자 정보를 가져온 후에 이 사용자 정보로 사용자가 누구인지 인증을 확인하는것이죠? 저는 access_token없이 id_token만으로도 userinfo 엔드포인트를 호출 할 수 있는지 확인하기 위해postman에서 id_token을 bearer 토큰으로 호출했는데 401로 id_token 만 가지고는 userinfo 정보를 확인이 안되더라고요. 이게 맞는건가요? 아시는 고수님들의 답변 기다리겠습니다.
-
미해결스프링 시큐리티 OAuth2
oidc userinfo 확인 시 오류가 납니다.
안녕하세요. 강의 잘 보고 많은 부분 배워가고 있습니다. 강의 진행중 섹션 7의 OAuth2 로그인 구현 - Oauth 2.0 User 모델 소개(2)에서뒷부분 oidc로 사용자 정보 조회하는 부분인데요. @GetMapping("/oidc") public OAuth2User oidc(String accessToken, String idToken) { ClientRegistration clientRegistration = clientRegistrationRepository.findByRegistrationId("keycloak"); OAuth2AccessToken oAuth2AccessToken = new OAuth2AccessToken(OAuth2AccessToken.TokenType.BEARER, accessToken, Instant.now(), Instant.MAX); Map<String, Object> idTokenClaims = new HashMap<>(); idTokenClaims.put(IdTokenClaimNames.ISS, "http://localhost:9091/realms/oauth2"); idTokenClaims.put(IdTokenClaimNames.SUB, "OIDC0"); idTokenClaims.put("preferred_username", "userpww"); OidcIdToken oidcIdToken = new OidcIdToken(idToken, Instant.now(), Instant.MAX, idTokenClaims); OidcUserRequest oAuth2UserRequest = new OidcUserRequest(clientRegistration, oAuth2AccessToken, oidcIdToken); OidcUserService oidcUserService = new OidcUserService(); OAuth2User oAuth2User = oidcUserService.loadUser(oAuth2UserRequest); return oAuth2User; }oidcUserService.loadUser(oAuth2UserRequest); 이 부분이 실행될 때loadUser 메서드 내부의 if (!userInfo.getSubject().equals(userRequest.getIdToken().getSubject())) { OAuth2Error oauth2Error = new OAuth2Error(INVALID_USER_INFO_RESPONSE_ERROR_CODE); throw new OAuth2AuthenticationException(oauth2Error, oauth2Error.toString()); }이 부분을 타면서 예외가 발생합니다. 어떤 부분을 확인해 봐야 할까요?userInfo의 sub와 userRequest의 sub가 달라서 그런걸까요?읽어주셔서 감사합니다.
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
ScannerEx1 : String과 Int
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]Scanner로 나이를 받을 때숫자인데 int가 아닌 String으로도 정상 작동하던데요왜 그런 건가요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
객체 수정 후 참조값이 의도한 대로 나오지 않아요!!
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.안녕하세요! 마지막에 객체의 참조를 수정하면 update 쿼리가 날라감으로써 DB 내 참조 값도 바뀌는 것을 확인했습니다.하지만, 여기서 드는 의문이 다음의 코드에서 객체의 참조값을 수정했음에도 불구하고 다음 실행 때 확인해보면 변경 전의 참조값이 출력됩니다. 이거 왜이러는 걸까요??
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
하... 요류를 못찾겠습니다.
처음에는 BookService.class 작성시 userRepository의 orElseThrow가 불러와지지를 않아서 커뮤니티에 있는 다른분의 질문글에서 해답을 찾으려했는데 이걸 고치니 오류가 나타나는데 이 오류를 못찾겠습니다...강사님 살려주세요 Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. 2024-03-21 23:42:16.319 ERROR 4515 --- [ main] o.s.boot.SpringApplication : Application run failed org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'bookService' defined in file [/Users/jojun-yeong/Desktop/강의 자료/1월25/Java_Spring_Library_Application/library-app/out/production/classes/com/group/libraryapp/Service/book/BookService.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userLoanHistoryRepository' defined in com.group.libraryapp.domain.user.loanhistory.UserLoanHistoryRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is org.springframework.data.repository.query.QueryCreationException: Could not create query for public abstract boolean com.group.libraryapp.domain.user.loanhistory.UserLoanHistoryRepository.existByBookNameAndIsReturn(java.lang.String,boolean); Reason: Failed to create query for method public abstract boolean com.group.libraryapp.domain.user.loanhistory.UserLoanHistoryRepository.existByBookNameAndIsReturn(java.lang.String,boolean)! No property 'existByBookName' found for type 'UserLoanHistory'; nested exception is java.lang.IllegalArgumentException: Failed to create query for method public abstract boolean com.group.libraryapp.domain.user.loanhistory.UserLoanHistoryRepository.existByBookNameAndIsReturn(java.lang.String,boolean)! No property 'existByBookName' found for type 'UserLoanHistory' at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) ~[spring-context-5.3.24.jar:5.3.24] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.24.jar:5.3.24] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.6.jar:2.7.6] at com.group.libraryapp.LibraryAppApplication.main(LibraryAppApplication.java:11) ~[classes/:na] Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userLoanHistoryRepository' defined in com.group.libraryapp.domain.user.loanhistory.UserLoanHistoryRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is org.springframework.data.repository.query.QueryCreationException: Could not create query for public abstract boolean com.group.libraryapp.domain.user.loanhistory.UserLoanHistoryRepository.existByBookNameAndIsReturn(java.lang.String,boolean); Reason: Failed to create query for method public abstract boolean com.group.libraryapp.domain.user.loanhistory.UserLoanHistoryRepository.existByBookNameAndIsReturn(java.lang.String,boolean)! No property 'existByBookName' found for type 'UserLoanHistory'; nested exception is java.lang.IllegalArgumentException: Failed to create query for method public abstract boolean com.group.libraryapp.domain.user.loanhistory.UserLoanHistoryRepository.existByBookNameAndIsReturn(java.lang.String,boolean)! No property 'existByBookName' found for type 'UserLoanHistory' at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBean
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
초기 porm.xml 관련 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요 초기 porm.xml 관련하여 찾아보면서 해결할려고 시도하였으나 오류가 계속해서 발생되어 질문 드립니다 ! 자바 8이상 버전 상관 없으시다고 하셨는데 17버전으로 하게되면 문제가 발생하는 지? 11버전은 있어 11버전은 괜찮은 지?디펜던시 설정을 진행하였으나 hibernate와 h2 두 디펜던시 모두 에러가 발생하고 있습니다. 이미지 첨부 >오류 내용
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
안녕하세요 기선님 질문이있습니다..
음.. 다시 쿼리를 보는데@GetMapping("/events/{id}") public String getEvent(@CurrentUser Account account, @PathVariable String path, @PathVariable Long id, Model model) { model.addAttribute(account); model.addAttribute(eventRepository.findById(id).orElseThrow()); model.addAttribute(studyService.getStudy(path)); return "event/view"; }이쪽을 탈때 쿼리가 총 3개 나가는건 이해 했는데 마지막에 enrollment 엔티티 가져올때 쿼리리는 왜account 랑만 조인 하나요 ?연관관계를 보면 Event도있는데Event도 조인해야 하는거 아닌가요 ??@ManToOne 관계라 Eager 모드 아닌가요 ??
-
미해결이펙티브 자바 완벽 공략 1부
프로젝트 설정 관련 질문
안녕하세요! '소스 코드' 강의에서 알려주신 대로 상호 의존하는 부분을 주석 처리하고 mvn install 하는 도중 오류가 있어 질문 드립니다. java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field 'com.sun.tools.javac.tree.JCTree qualid' 라는 오류가 발생하여 JDK 설정을 11 로 바꾸어 주었습니다.lombok 관련 문제인 것으로 되어서, 버전을 1.18.30 으로 바꾸어 주었습니다. 그러나 이 경우에는 컴파일 에러 (AppConfig 등 Chinese Hello Service 를 참조하는 클래스들에서) 가 발생합니다.현재 상황은 위와 같습니다. 해결할 방법이 없을까요?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
빌드 관련 질문 있습니다.
윈도우로 하고 있는데gradlew.bat 을 빌드 하면 해당 오류가 뜨고 있습니다.세팅은스프링 부터 3.2.3자바 21 입니다. Gradle 세팅은해당 입니다.환경변수 확인 해봤는데 사용자 변수에는 JAVA_HOME 자체가 탐색도 안되는거 같습니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
48초에 dependencies 문서보는 부분이 없네요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]예전버전 인거같은데 웹사이트가 달라서 찾을수가 없네요
-
미해결실습으로 배우는 선착순 이벤트 시스템
컨슈머 테스트 중 쓰레드 슬립을 사용하지 않았는데 성공하는 이유가 뭘까요??
안녕하세요. 강의 잘 보고 있습니다. 저는 현재 kotlin, postgreSQL을 사용하고 있으며M3 맥북 환경입니다 강의에서 쓰레드슬립 사용 전 테스트케이스가 실패하는걸 확인할 수 있는데, 왜 저는 테스트가 성공되는걸까요..?? 원래 실패 해야 정상인 상황일까요? 어떤 이유에서 성공하는지 감이 잘 안옵니다..
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
th:object에 대해 질문드립니다.
MVC2편에서 배웠던 것 같지만 헷갈리는 부분이 있어 질문드립니다. // ItemController /** * 상품 수정 */ @PostMapping("/items/{itemId}/edit") public String updateItem(@ModelAttribute("form") BookForm form) { // updateItemForm.html <form th:object="${form}" method="post"> th:object="${form}" 에서 괄호 안에 form을 참조하여 컨트롤러의 @ModelAttritube("form")을 했을 때 요청 파라미터를 바인딩해서 BookForm 객체에 넘겨준다고 이해했는데, @ModelAttritube("form1") 이런식으로 바꿔도 정상적으로 작동했습니다. 혹시 제가 놓친 부분이 있을까요?
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
11. 미로의 최단거리 통로(BFS)
dis L이라는 변수를 따로둬 배열 없이 풀어봤습니다. 일단 채점 사이트에는 정답으로 나왔는데 이렇게 풀어도 되는지 궁금해서 여쭤봅니다 ..미로가 막혀있다면 정답 직전까지 q.offer가 불가능해서 접근 불가능 하다고 생각 했습니다. 이럴 정답에 접근 불가니 -1를 리턴하면 된다고 생각했습니다. 더이상 누적되는 큐도 없으니 메소드도 끝난다고 생각 했습니다 .import java.util.LinkedList; import java.util.Queue; import java.util.Scanner; class Pointer{ int x,y; public Pointer(int x, int y) { this.x = x; this.y = y; } } public class Main { static Scanner sc = new Scanner(System.in); static Main T = new Main(); static int[] dx = {-1, 0, 1, 0}; static int[] dy = {0, 1, 0, -1}; static int[][] miro; static int n; static int answer; public static void main(String[] args) { n = 7; miro = new int[n + 1][n + 1]; for (int i = 1; i <= n; i++) { for (int j = 1; j <= n; j++) { miro[i][j] = sc.nextInt(); } } miro[1][1] = 1; answer = T.searchMiro(1, 1); System.out.println(answer); } private int searchMiro(int x, int y) { Queue<Pointer> q = new LinkedList(); q.offer(new Pointer(x, y)); int L = 0; while (!q.isEmpty()) { int size = q.size(); for (int i = 0; i <size ; i++) { Pointer poll = q.poll(); for (int z = 0; z < 4; z++) { int nx = poll.x + dx[z]; int ny = poll.y + dy[z]; // 접근 가능하다면 바로 리턴 if (nx == n && ny == n) {return L + 1;} if (nx >= 1 && ny >= 1 && nx <= n && ny <= n && miro[nx][ny] == 0) { miro[nx][ny] = 1; q.offer(new Pointer(nx,ny)); } } } L++; } return -1; } }
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
안녕하세요! 강의 내용을 바탕으로 응용해서 H2 데이터베이스에서 MySQL로 바꾸는 작업을 하고 있습니다!
https://drive.google.com/file/d/1ZTyx0uvGjnTkhf1YH7t2espgi1Koaf0N/view?usp=sharing build.gradle이랑 application.properties diver 설정도 했는데 왜 부트가 꺼지는지 모르겠네요...ㅠ
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
30장 코드수정하니 run오류가 납니다..
오류를 해석하려햇는데 book쪽에서 뭔가 오류인것같은데 수정하고 강사님 코드를 붙여넣어봐도 같은 오류가 나오네요.. 혹시 어떤오류인지 알 수 있을까요?Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. 2024-03-19 16:21:44.681 ERROR 42249 --- [ main] o.s.boot.SpringApplication : Application run failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is org.hibernate.AnnotationException: No identifier specified for entity: com.group.libraryapp.domain.book.Book at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1154) ~[spring-context-5.3.24.jar:5.3.24] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:908) ~[spring-context-5.3.24.jar:5.3.24] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.24.jar:5.3.24] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.6.jar:2.7.6] at com.group.libraryapp.LibraryAppApplication.main(LibraryAppApplication.java:11) ~[classes/:na] Caused by: org.hibernate.AnnotationException: No identifier specified for entity: com.group.libraryapp.domain.book.Book at org.hibernate.cfg.InheritanceState.determineDefaultAccessType(InheritanceState.java:266) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final] at org.hibernate.cfg.InheritanceState.getElementsToProcess(InheritanceState.java:211) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final] at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:772) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final] at org.hibernate.boot.model.source.internal.annotations.AnnotationMetadataSourceProcessorImpl.processEntityHierarchies(AnnotationMetadataSourceProcessorImpl.java:225) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final] at org.hibernate.boot.model.process.spi.MetadataBuildingProcess$1.processEntityHierarchies(MetadataBuildingProcess.java:239) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final] at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:282) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final] at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:1460) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final] at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1494) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final] at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58) ~[spring-orm-5.3.24.jar:5.3.24] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365) ~[spring-orm-5.3.24.jar:5.3.24] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) ~[spring-orm-5.3.24.jar:5.3.24] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) ~[spring-orm-5.3.24.jar:5.3.24] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341) ~[spring-orm-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.24.jar:5.3.24] ... 16 common frames omitted 종료 코드 1(으)로 완료된 프로세스
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
h2 DB TCP 연결이 안됍니다
test 접속하면 연결이되고 db도 생깁니다.하지만 tcp로 연결이 안됩니다.db파일 삭제 여러번 해봤습니다.자바 17,. 스프링 부트 3,x , h2 2.2.224 버전입니다.이유가 뭘까요?
-
미해결스프링 프레임워크 입문
wro4j가 없습니다.
자바 8버전이 안되서 17로 했는데 wro4j가 안뜹니다.