55,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결스프링 프레임워크 핵심 기술
New Project에 Spring Initializer 항목이 없습니다
현재 IntelliJ IDEA Community Edition 버젼 사용하고 있으며 New Project 했을시 spring 에 관한 항목이 전혀 없습니다 어떻게 해야하나요
- 미해결스프링 프레임워크 핵심 기술
강의 자료는 현재 PDF밖에 없어요
강의 자료는 현재 PDF밖에 없는데 강의 프로젝트는 어디서 다운로드 받아야 하나요?
- 해결됨스프링 프레임워크 핵심 기술
EventEditor객체의 getAsText 메서드에 관하여 질문드립니다.
getAsText메서드에 breakPoint를 지정하고 디버깅해보았더니 해당 메서드가 사용되지 않는것을 알게되었습니다. Controller에서 Event객체를 리턴하지 않고 직접 String 객체로 변환하여 리턴하게 설정해서 getAsText메서드가 실행되지 않는다고 예상하여 아래와 같이 리턴값을 String에서 Event객체로 바꿔 실행보았지만 답을 찾지 못하였습니다. curl 접근방법이 아예 이상하다거나 특정한 Accept 헤더를 해주어야 하는 등의 조언을 받을수 있을까요..? getAsText메서드가 사용되는 상황을 알고 싶습니다. 추가) 코드를 조금 변환하여 getAsText메서드를 직접사용하는 방법으로 시도해보았습니다.
- 미해결스프링 프레임워크 핵심 기술
스프링 빈 등록 방법
백선장님 스프링 빈등록 방법이 헷갈립니다 JwtConfig는 현재 빈으로 등록되지 않았는데JwtSecretKey에서 어떻게 주입받는지 모르겠습니다 잘못된 코드인가요? p.s https://www.youtube.com/watch?reload=9&v=her_7pa0vrg&ab_channel=Amigoscode 4:39:00 을 참조하고 있습니다
- 미해결스프링 프레임워크 핵심 기술
에러 발생 질문드려요ㅠㅠ
심각: 클래스 [org.springframework.web.context.ContextLoaderListener]의 애플리케이션 리스너를 설정하는 중 오류 발생 java.lang.NoClassDefFoundError: Lorg/springframework/beans/factory/access/BeanFactoryReference; at java.lang.Class.getDeclaredFields0(Native Method) at java.lang.Class.privateGetDeclaredFields(Unknown Source) at java.lang.Class.getDeclaredFields(Unknown Source) at org.apache.catalina.util.Introspection.getDeclaredFields(Introspection.java:110) at org.apache.catalina.core.DefaultInstanceManager.populateAnnotationsCache(DefaultInstanceManager.java:402) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:173) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:151) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4604) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5143) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1384) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1374) at java.util.concurrent.FutureTask.run(Unknown Source) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.util.concurrent.AbstractExecutorService.submit(Unknown Source) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:909) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:841) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1384) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1374) at java.util.concurrent.FutureTask.run(Unknown Source) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.util.concurrent.AbstractExecutorService.submit(Unknown Source) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:909) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:421) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:932) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.startup.Catalina.start(Catalina.java:633) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:344) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:475) Caused by: java.lang.ClassNotFoundException: org.springframework.beans.factory.access.BeanFactoryReference at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1365) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1188) ... 37 more 잘 실행되다가 이런 에러에 맞닥뜨리게 되었습니다. 원인이 무엇일까요...?
- 해결됨스프링 프레임워크 핵심 기술
빌드 관련해서 문의드립니다.
빌드를 해야 적용이 되는 이유가, 실제 애플리케이션이 참조하는(?) target에 다시 만들어져야하기 때문인가요?
- 해결됨스프링 프레임워크 핵심 기술
classpath와 절대경로, 상대경로 관련해서 문의드립니다.
어쩔때는 그냥 경로없이 파일명만 넣고, 어쩔때는 classpath: 붙여서 경로로 넣고 하는데,, 절대경로/상대경로 이런 것들이 좀 혼동됩니다.
- 해결됨스프링 프레임워크 핵심 기술
BeanPostProcessor 관련 질문드립니다.
BeanFactory가 BeanPostProcessor 타입을 찾아서 처리한다고 하셨는데, 그럼 스프링 애플리케이션이 구동될 때 여러 BeanPostProcessor 구현체들도 먼저 모두 빈으로 등록이 되는건가요?
- 해결됨스프링 프레임워크 핵심 기술
콩모양 안 보이는 것에 관해
안녕하세요 이제 입문강좌 다 듣고 핵심 기술 강좌로 넘어온 학생입니다! 저는 여기에 왜 콩모양이 생기지 않는 걸까요?
- 미해결스프링 프레임워크 핵심 기술
formatter bean 등록 질문입니다
안녕하세요 강의 잘 듣고 있습니다. formatter를 생성한 후 @Component를 통해 bean으로 등록해준 후 사용하면 MethodArgumentConversionNotSupportedException 이 발생합니다 ... Configuration 파일을 이용해서 등록하면 잘 동작합니다 또한 ConversionService 객체를 Autowired로 주입받고 class이름을 출력하면 WebConversionService가 아닌 DefaultFormattionConversionService가 출력됩니다.. spring boot 2.3.3 버전을 사용하고 있는데 formatter가 빈으로 등록되지 않는 이유가 무엇인가요?
- 미해결스프링 프레임워크 핵심 기술
스프링에서 인터페이스란..
Enviroment enviroment = ctx.getEnviroment(); ApplicationContext에서 EnviromentCapable를 상속하기 때문에 getEnviroment() 를 사용할 수 있다고 하셨는데요, 자바에서 인터페이스를 사용하는 이유는 사용자가 인터페이스에 존재하는 불완전한 클래스를 오버라이드 해서 강제로 구현시키려는 목적이라고 배웠어요.. EnviromentCapable만 봐도 getEnviroment메소드에 아뭐것도 정의되어 있지 않잖아요! 근데 스프링강좌에서는 인터페이스를 일반 클래스처럼 상속해서 사용하는데 이거를 스프링이 대신 구현해 주는건가요?.. 만약 그렇다면 인터페이스가 아니라 기냥 일반 클래스를 라이브러리로 제공해 주는거랑 똑같은거 아닌가요..? 왜 굳이 인터페이스로 구현하게 한 다음 사용자가 구현하는게 아니라 스프링이 구현하게 하는거죠..? 기냥 완전한 클래스를 제공하면 되는거잖아요..
- 미해결스프링 프레임워크 핵심 기술
ApplicationContext는
따로 컴포넌트 등록을 안했는데 어떻게 @Autowired로 주입이 되나요.. ?
- 미해결스프링 프레임워크 핵심 기술
강의 프로젝트 소스
강의와 관련있는 질문을 남겨주세요.• 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등)• 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색을 해주세요. (중복 질문을 자제해주세요.)• 서비스 운영 관련 질문은 인프런 우측 하단 ‘문의하기’를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달에도 요령이 필요합니다.• 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요.• 강의실 페이지(/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다.• 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재해주세요. • 수업 특정 구간에 대한 질문은 꼭 영상 타임코드를 남겨주세요! 구체적인 질문일수록 명확한 답을 받을 수 있어요.• 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요.• 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요.• 정확한 질문 내용과 함께 코드를 적어주시거나, 캡쳐 이미지를 첨부하면 더욱 좋습니다. 기본적인 예의를 지켜주세요.• 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. • 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. • 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용은 스팸 처리 등 제재를 가할 수 있습니다. 강의에서 예제로 보여주시는 소스는 어디서 가져오시나요!?
- 미해결스프링 프레임워크 핵심 기술
안녕하세요! DB관련 질문드립니다
안녕하세요! 조언 부탁드리고자질문 올렸습니다. 스프링프레임워크 핵심기술 강의를 완강하고 배운 내용을 적용하며 토이프로젝트를진행해보려합니다. 혹시 JDBC를 이용해서 프로젝트를 하는게 기초를 다지는 측면에서 더 도움이 될까요? 아니면 공부를 하면서라도 JPA를 사용해보는게 도움이 될까요?? 감사합니다. 좋은하루되세요!
- 미해결스프링 프레임워크 핵심 기술
dependency 설정 질문있습니다.
안녕하세요. 너무 좋은 강의 만들어주셔서 정말 감사합니다. 요즘 정말 재밌게 강의 듣고 있는데요, 강의내용대로 실습해보던 중 dependency 설정이 제대로 안되는 문제가 발생했습니다. 기선님께서 알려주신대로 했다가 안돼서 Maven Repository에서 찾아서 그대로 써봤는데도 저렇게 문제가 발생하네요.. 혹시 비슷한 이슈 겪어본 경험이 있으실까요..? 감사합니다. 좋은 하루 되세요!
- 미해결스프링 프레임워크 핵심 기술
현업 스프링부트 개발시 JDK 에 대해 궁금해요
현업에서 스프링부트로 개발할 때 회사에서 JDK 8 혹은 11 이렇게 사용하는 기준이 이미 정해진게 있겠지만 최신버전을 쓰지않는 이유가 무엇일까요?? 예를들어 제가있는 회사에서는 노드를 사용하는데 안정화 버전이 나오면 노드10에서 12로 옮겨갑니다. 자바개발을 경험해보진 않았지만 대부분 회사가 자바8 버전을 사용하는것 같아 보이던데 최신안정화 버전을 사용하지 않는 이유가 영상에서 말씀해주신것 처럼 "JDK11은 상용화로 사용할 경우 유료이다." 이 이유때문 인가요???
- 미해결스프링 프레임워크 핵심 기술
JSON 객체 배열을 스프링 컨트롤러에서 받을 수 있는 가장 합리적인 방법을 알고 싶습니다!
데이터 예시{ 'testList' : [ { 'test01' : '000', 'test02' : '001' }, { 'test01' : '003', 'test02' : '004' } ] }해당 데이터를 스프링 컨트롤러로 전달 시 (ajax 요청) 가장 합리적으로 받을 수 있는 방법이 궁금합니다.1. @RequestBody 사용 - jackson 메시지 컨버터가 사용되기에 문제 없이 잘 동작하는 것 같습니다.- 2. @ModelAttriute 사용- 스크립트 단에서 testList[0].test01 형태로 직접 리스트의 인덱스에 접근해서 넘기지 않을 경우, 컨버팅 에러 발생- 데이터 예시의 형태를 직접 testList[0].test01 형태로 바꿔주는 작업을 스크립트 단에서 처리해야 하는게 맞을까요? (굉장히 비효율적이라는 생각이 듭니다.)3. 스프링 컨버터 추가- 직접 커스텀 컨버터 작성 후 등록 추가적으로 용어에 대한 정확한 이해가 되지 않아 질문드립니다.컨버터를 등록한다라는 것이, 기존 HTTP 메시지 컨버터에 추가적으로 새로운 컨버터를 등록한다는 의미인가요? 그리고 핸들러 메소드가 이러한 컨버터들을 이용하여 객체 또는 필드에 매핑하는 것인가요?정확한 개념이 잡히지 않으니, 응용하기가 조금 어렵습니다.긴 질문 읽어주셔서 감사합니다!
- 해결됨스프링 프레임워크 핵심 기술
@PathVariable를 이용하셨는데
@PathVariable를 이용해서 url에서 오는 변수를 추출해서 문자열인 1을 데이터바인딩을 이용해 도메인 객체로 전환해서 필드에 값이 셋팅되었는데 보통 실무에서도 이런식으로 @PathVariable쓸때 데이터 바인딩 많이 쓰나요? 보통 json 형식으로 데이터 보내면 @RequestBody이용해서 알아서 객체 프로퍼티로에 전환 되는거는 알고어서 이쪽이 더 간편한거 같은데
- 해결됨스프링 프레임워크 핵심 기술
TT 감은 왔는데 정리가 잘 안되네요
강의 잘 들었습니다! 15분강의인데 50분 정도 생각을 정리해도 긴가민가 해서 질문드립니당 ApplicataionContext는 resourceLoader를 구현해서 getResource하면 resource타입 객체를 반환하는데 여기서 Resoure인터페이스를 구현한 구현체 ClassPathResource , ServletContextResource , FileSystemResource중에서 이용해서 가져오는데 ApplicationContext는 일단 defalut로는 ServletContextResource 이용 해서 가져오는데 접두어 classpath나 File를 쓰면 강제로 가능하게 합니당 근데 ApplicationContext applicationContext = new ClassPathXmlApplicationContext("abc.xml");같은 경우에는 ClassPathXmlApplicationContext이게 ApplicationContext구현체인거는 알겠는데 classpath를 안적어도 되는이유가 내부적으로 "abc.xml"이 classpath:abc.xml(위치)로 변환되서 그런걸까요?
- 해결됨스프링 프레임워크 핵심 기술
결국 다른 패키지에 있는 빈들을 스캔할려면
MyService같은 다른 패키지에 있는 빈들을 스캔할려면 펑션을 사용한 빈 등록처럼 직접 applicationContext에 다가 빈을 등록하는수 밖에 없나요? 그리고 펑션을 사용한 빈 등록은 인스턴스를 이용해 생성해서 직접 빈 등록해서 구동시 성능을 증가한다고 보면 될까요? 그런데 단점으로는 설정파일이 너무 많아지는점이구요