묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결코드로 배우는 React 19 with 스프링부트 API서버
책없이 강의듣는중입니다.
저는 책이 없이 강의만을 통해 학습중입니다. 강의 중간중간 코드를 복사해서 오시더라구요 ~ js같은 경우는 따라치는것에 대해 어려운 부분이 있는데 혹시 어쩔 수 없는 부분인 걸까요 ?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
26강 서버실행 오류
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.2024-06-28 18:38:36.868 ERROR 35116 --- [ main] o.s.boot.SpringApplication : Application run failedorg.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dataSourceScriptDatabaseInitializer' defined in class path resource [org/springframework/boot/autoconfigure/sql/init/DataSourceInitializationConfiguration.class]: Unsatisfied dependency expressed through method 'dataSourceScriptDatabaseInitializer' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver 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.instantiateUsingFactoryMethod(ConstructorResolver.java:541) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[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.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322) ~[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:10) ~[main/:na]Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[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.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.24.jar:5.3.24] ... 21 common frames omittedCaused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.24.jar:5.3.24] ... 35 common frames omittedCaused by: java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver at org.springframework.util.Assert.state(Assert.java:97) ~[spring-core-5.3.24.jar:5.3.24] at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:171) ~[spring-boot-autoconfigure-2.7.6.jar:2.7.6] at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.initializeDataSourceBuilder(DataSourceProperties.java:123) ~[spring-boot-autoconfigure-2.7.6.jar:2.7.6] at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:48) ~[spring-boot-autoconfigure-2.7.6.jar:2.7.6] at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari.dataSource(DataSourceConfiguration.java:90) ~[spring-boot-autoconfigure-2.7.6.jar:2.7.6] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na] at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.24.jar:5.3.24] ... 36 common frames omitted기존에 저랑 같은 문제를 갖고 있는 학우 분 코멘트 따라서runtimeOnly 'com.mysql:mysql-connector-j'기존 runtimeOnly 의존성을 지우고 해당 코드를 추가해줬지만 여전히 같은 에러가 나옵니다.어떻게 해결하면 좋을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
H2 데이터베이스 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]test.mv.db 파일 생성된 것 확인하고 그다음에 jdbc:h2:tcp://localhost/~/test이거 복사 붙여넣기 해서 연결 눌렀더니 사진처럼 연결이 안되네요 이거 관련된 질문 찾아봤는데 파일 지우고 다시 만들라는데 윈도우 cmd에서 touch 명령어가 안먹히는데 어떡하나요?
-
미해결토비의 스프링 부트 - 이해와 원리
커스톰 @Conditional 에서 다양하게 의존성 주입이 가능한가요?
@Conditional 강의를 들으면서, 특정 조건(Condition)에 따라서 의존성 주입을 A, B로 변경할 수 있어서 흥미롭게 보게되었습니다.토비님께서 예제로 설명해주신 웹서버 설정외에 다른 방법도 가능할까요?matches 메서드 안에서 DB를 조회하여, 해당 값으로 인해 A, B로 의존성 주입이 가능할까요??-> 서비스 빈을 찾아서 jpaRepository로 조회할려고 하니, jpaRepository가 null이 되어 아직 주입되지 않는 듯 합니다. 다른 방법이 있을까요?사용자구성정보랑 자동구성정보의 빈 생성 시점이 달라서 인지 궁금합니다.gradle 설정에서 implement의 설정에 따라서 @Conditional matches로 의존성주입이 가능하던데, 마찬가지로 멀티모듈구성시 모듈의 주입되지 않을경우, @ConditionalOnMissingBean으로 멀티모듈의 빈이 아닌 해당빈으로(디폴트 빈)으로 설정이 가능한지 궁금합니다.바쁘실텐데 답변주시면 감사하겠습니다.
-
미해결[초급] 찍어먹자! 코틀린과 Spring Security + JWT로 회원가입 만들기
토큰에서 예외 발생시 처리
안녕하세요 강사님, 좋은 강의 잘 듣고 있습니다.따라하던 중 토큰을 잘못 입력했을 경우 403 Forbidden 에러가 발생하는데 이 에러의 경우는 RestControllerAdvice 에서 처리를 할 수 없는건가요??이 경우에도 Response형태를 통일 시키고 싶은데 어떻게 하면 될까요..?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
인텔리제이 설치부터 설정까지 강의를 봐도 안나와있어서 문의드려요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.스프링 입문 수업을 듣고있는데 처음부터 막혔어요 ㅜㅜ 인텔지제이 설치부터 설정을 처음부터 어떻게 해야하나요 강의에서는 인텔리제이가 이미 깔려있고 설정도 어느정도 마친상태로 하던데 어떻게 해야하냐요
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
테스트코드를 통해 mysql의 특정 테이블에 넣고 싶은데 어떻게 해야하나요??
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
안녕하세요!
안녕하세요!선생님께서 올려주신 강의를 수강하고 있는 수강생입니다!다름이 아니라 강의의 정리 또는 요약을 한 내용을 블로그 또는 깃허브에 올려도 괜찮을까요??출처는 모두 표시하겠습니다!이상입니다!감사합니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링 vs 스프링 부트
선생님 안녕하세여 강의 열심히 듣고 있는 학생입니다.다름이 아니라 프로젝트 제작 하려고 하는데 스프링과 스프링 부트 중에 어떤 걸 더 추천하시나요? 선생님 의견이 궁금합니다.
-
미해결실전! 스프링 데이터 JPA
쿼리 힌트 말고 트랜잭션 어노테이션 활용 질문이요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.조회만을 위한 메서드를 작성할때 쿼리 힌트를 사용하는것보다 트랜잭셔널 메소드 레벨 어노테이션에 readOnly=true 속성을 넣어서 읽기 전용으로 사용하면 안되나요?
-
해결됨스프링 시큐리티 완전 정복 [6.x 개정판]
securityMatcher, requestMatcher의 차이점이 뭔가요?
정확히 이해가 안가요http.securityMatcher("/api/**")http.requestMatcher("/api/**")둘다 /api 하위에 보안 필터를 적용하기 위함이 아닌가요?어떤 차이가 있는지 명확히 알고싶어요
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
강의 난이도
안녕하세요. 컴퓨터공학과 3학년학생입니다. 백엔드에 관심이 생겨 스프링 강의를 들으려 강의를 찾아보던중 인프런의 김영한님의 스프링 강의를 알게 되었습니다. 김영한님 강의가 어렵다는 말도 있던데, 스프링 완전 초보자가 들어도 잘 이해할 수 있을지 궁금합니다! 저는 로드맵에서 가장 첫 무료 입문 강의(코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 )를 초반만 조금 들었봤는데 조금 난이도가 있더라고요. 이게 전체적인 흐름을 알려주는거라서 어려운것인가요? 로드맵 뒤에 스프링 핵심 원리 - 기본편도 비슷한 난이도인가요? 더 쉬운편인지 궁금합니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
cmd에서 조작하는 법을 모르겠습니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]일단 h2 다운받기는 했는데 cmd에서 조작하는 법을 모르겠습니다. 아무거나 쳐봐도 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 라고만 뜹니다.
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
폼 로그인 방식 failureUrl 지정 시 인가 처리 API 가 작동하지 않습니다.
위와 같이 failureUrl 지정하지 않았을 경우에는 이렇게 애플리케이션 홈 화면이 잘 나타납니다. 그런데 이렇게 failureUrl 을 별도로 지정해주게 되면 홈 화면에서도 인증을 요구하고 인가 처리에 대한 설정이 무시되어 버립니다. 왜 이렇게 되는 것인가요? 강의에서 이 현상에 대해서는 별 말씀 없으셔서 혼란스럽네요.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
김영한 강사님 스프링 로드맵을 수강하려고 합니다.
백엔드 프로젝트로데이터베이스를 사용하지 않는 게시판을 만들어보고 싶은데김영한 강사님의 로드맵스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 스프링 핵심 원리 - 기본편 현재 강의 모든 개발자를 위한 HTTP 웹 기본 지식 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술스프링 MVC 2편 - 백엔드 웹 개발 활용 기술스프링 DB 1편 - 데이터 접근 핵심 원리스프링 DB 2편 - 데이터 접근 활용 기술스프링 핵심 원리 - 고급편실전! 스프링 부트 중 어디까지는 들어야지 제가 원하는 간단한 프로젝트를 진행할수 있을지 궁금합니다.감사합니다.
-
미해결스프링 배치
스프링 배치 5 변경점 정리
5버전으로 강의 따라가면서 정리하고 있습니다(현재진행중). 공유하고자 올려봅니다.혹여나 틀린점 있으면 지적해주세용.Execution context serialization Updateshttps://github.com/spring-projects/spring-batch/wiki/Spring-Batch-5.0-Migration-GuideExecutionContext에 Base64로 인코딩된 데이터가 저장됩니다.@Configuration public class BatchConfig { @Bean public ExecutionContextSerializer jacksonSerializer() { return new Jackson2ExecutionContextStringSerializer(); } }강의처럼 데이터를 json으로 저장하고 싶으면, jackson-core의존성을 추가한 후, 위 설정클래스를 정의합니다.섹션2~3@EnableBatchProcessing 을 쓰게되면 BatchAutoConfiguration이 적용되지 않는다.https://umbum.dev/1320/자동 구성과 수동 구성 요소가 동시에 존재할 때 발생할 수 있는 모호성과 충돌을 피하기 위해BuilderFactory대신 JobBuilder, StepBuilder 직접 사용팩토리 클래스들은 종종 불필요한 복잡성을 추가하고, Spring Batch 구성의 일관성을 떨어뜨림.직접 사용해서 더 많은 제어 권한 획득Tasklet 사용시 , PlatformTransactionManager 함께사용 (단일 사용 deprecated)배치 설정 클래스 BasicBatchConfigurer → DefaultBatchConfiguration으로 변경 섹션 3 - JobLauncher주입받은 JobLauncher가 프록시객체가 아닌 실제 객체라서 DefaultBatchConfiguration 에서 JobLauncher를 얻어올 필요없이 바로 타입캐스팅 가능섹션 4 - 배치 초기화 설정spring:batch:job: names(x) -> name실행 할 job을 찾지 못하면 예외가 발생합니다. 인텔리제이에 환경설정으로 프로그램 인수를 한개만 할당할 수 있게 변경되었습니다.파라미터 관련해서는 코드로 할당해줘야 합니다.multiple jobs 실행 불가능.JobLauncherApplicationRunner 의 executeLocalJobs 메서드에서 split으로 job 이름을 구분하는 코드가 삭제되었습니다.섹션 7 - 스프링 배치 청크 프로세스 이해chunk사용시 , PlatformTransactionManager 함께사용 (단일 사용 deprecated)ItemWriter의 write(List<? extends String> items ) -> write(Chunk<? extends String> chunk)Items에 접근하려면 getItems로 꺼내야합니다.
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
Member와 Order에 LAZY 설정을 해도 순환참조가 발생하는게 맞나요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 아니요3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]양쪽에 LAZY로 설정되어 있는것 같은데맴버를 조회하면 ORDER와 MEMBER가 무한으로 탑니다.( 주문까지 진행한 상태 )그게 현재 진도에서 맞는 상태인지 궁금합니다.(다음 강의에 설명 나오는지 모름)
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
config-service를 profiles 별로 나눌수 있을까요?
config-service 서버 profile 설정 질문드립니다. 예를들어 profile3가지로 나눌 경우application.ymlapplication-dev.ymlapplication-prod.yml "prod" 에서만 git 경로를 참고하고나머지 두개는 물리 경로를 지정하려 합니다. bootstrap에 설정한 encrypt.key 도 profile별로 변경하여 사용하고 싶은데 profile 설정이 안되내요... 수업내용 참고하여 설정시 yml 파일에spring.profiles.active=native이게 없을경우 에러가 납니다. 해결 방법이 있을지 문의드립니다. 에러로그는 아래와 같습니다.Description:Invalid config server configuration.Action:If you are using the git profile, you need to set a Git URI in your configuration. If you have set spring.cloud.config.server.bootstrap=true, you need to use a composite configuration.
-
미해결토비의 스프링 부트 - 이해와 원리
섹션3 HelloController, DemoAppication
둘다 Mapping이 "/hello"인데실행을 하면 DemoApplication에서 정의한 hello가 매핑되는건 왜인가요??(HelloController는 안타는 이유가 뭘까요?)
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
13강 DB연결 관련 질문드립니다.
안녕하세요. 우선 좋은 강의 만들어 주셔서 감사합니다.13강을 수강하던 중 오류가 발생하여 질문드립니다. 검색해보니 테이블 명이 user로 생성을 하면 안되는 것 같아 user_table 이라는 명칭으로 테이블을 생성했습니다.CLI로 확인해본 결과 테이블 자체는 정상적으로 생성이 되었습니다. 그런데 컨트롤러와 yml 파일 설정 후 화면에서 데이터를 저장하려고 하니 오류가 발생합니다. spring: database: url: "jdbc:mysql://localhost/library" username: "root" password: "" drive-class-name: com.mysql.cj.jdbc.Driver package com.group.libraryapp.controller.User; import com.group.libraryapp.domain.user.User; import com.group.libraryapp.dto.User.request.UserCreateRequest; import com.group.libraryapp.dto.User.response.UserResponse; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.RowMapper; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; @RestController public class UserController { private final JdbcTemplate jdbcTemplate; public UserController(JdbcTemplate jdbcTemplate){ this.jdbcTemplate = jdbcTemplate; } private final List<User> users = new ArrayList<>(); @PostMapping("/user") public void saveUser(@RequestBody UserCreateRequest request){ String sql = "INSERT INTO user_table (name, age) VALUES (?,?)"; jdbcTemplate.update(sql, request.getName(), request.getAge()); } @GetMapping("/user") public List<UserResponse> getUsers() { String sql = "SELECT * FROM user_table"; //람다로 변경 알트+엔터 return jdbcTemplate.query(sql, (rs, rowNum) -> { long id = rs.getLong("id"); String name = rs.getString("name"); int age = rs.getInt("age"); return new UserResponse(id, name, age); }); } } INSERT INTO user_table (name, age) VALUES (?,?) [42104-214]] with root cause org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "USER_TABLE" not found (this database is empty); SQL statement: INSERT INTO user_table (name, age) VALUES (?,?) [42104-214] at org.h2.message.DbException.getJdbcSQLException(DbException.java:502) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.getJdbcSQLException(DbException.java:477) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.get(DbException.java:223) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.get(DbException.java:199) ~[h2-2.1.214.jar:2.1.214] at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:8385) ~[h2-2.1.214.jar:2.1.214] at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:8369) ~[h2-2.1.214.jar:2.1.214] at org.h2.command.Parser.readTableOrView(Parser.java:8358) ~[h2-2.1.214.jar:2.1.214] at org.h2.command.Parser.readTableOrView(Parser.java:8328) ~[h2-2.1.214.jar:2.1.214] at org.h2.command.Parser.parseInsert(Parser.java:1632) ~[h2-2.1.214.jar:2.1.214] at org.h2.command.Parser.parsePrepared(Parser.java:814) ~[h2-2.1.214.jar:2.1.214] at org.h2.command.Parser.parse(Parser.java:689) ~[h2-2.1.214.jar:2.1.214] at org.h2.command.Parser.parse(Parser.java:661) ~[h2-2.1.214.jar:2.1.214] at org.h2.command.Parser.prepareCommand(Parser.java:569) ~[h2-2.1.214.jar:2.1.214] 위와 같이 데이터베이스가 비었다고 하고 테이블을 찾지 못하는데 제가 어느 부분을 확인해야 하는지 궁금해 질문드립니다.