묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
Unable to start embedded Tomcat 에러
ServletApplication을 실행하면 Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat 에러가 나옵니다.어제까지만 해도 잘 실행이 되었는데 원인을 모르겠습니다. 캐시초기화를 해도 같은 오류가 발생하네요
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
@SpringBootTest 오류
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]에러를 다 찾아서 수정을 하였으나 마지막인 Test단계에서계속 무시해버리네요 왜 그런건지 구글링을 해도 이해가안됩니다. h2를 킨 상태에서도 이렇게 에러가 뜨는데 어떻게 해야할까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
assaultThat의 동등성 비교 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/)[질문 내용]findByName()의 테스트 부분을 보면 아무리 봐도 member1의 밸류값과 result의 밸류값이 "spring1"로 동일한데 테스트에 실패했다고 뜹니다근데 한 가지 의문인 건 테스트 값 결과를 보면 동등성이 아닌 동일성 비교를 하는 거 같은데, MemoryMemberRepository의 store가 HashMap을 사용하기 때문에 equals()와 HashCode()를 재정의 해줘야 하는 걸까요? 강의 내용엔 따로 기재되지 않아 질문합니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
jpa 자바 버전
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]제껏 스프링 버전이 3점대라서 자바 버전인source를 쓰지를 못하고 toolchain만 가능 하더라고요그래서 그런지 실행을 하려고 했으나 위에 경고문과 같이18버전이상부터 실행을 할 수 있게 만들어 놓은것 같은데이런 상황에서는 어떻게 처리해야 할까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
view 분리에 대해 질문이 있습니다!
public class MyView { private String viewPath; public MyView(String viewPath) { this.viewPath = viewPath; } public void render(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { RequestDispatcher dispatcher = request.getRequestDispatcher(viewPath); dispatcher.forward(request, response); } }꼭 viewPath를 인스턴스로 필드로 설정해서 객체로 만든 이유가 있나요? FrontController 내부에 요청,응답 객체와 view의 주소인 String 타입의 파라미터를 받는 메서드로 만들면 안 되나요?
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
MTV, MVC 질문
원래는 장고 프레임워크를 주로 이용했었습니다.MTV와 MVC의 View가 장고는 비즈니스로직을 처리해서 Template에 주고, M은 스프링의 Repository와 비슷하다고 생각했습니다. 조금 헷갈리는게,MVC일 때 V는 확실히 랜더링 부분만 담당하는 것이 이해가 갑니다. 다만 Controller가 비즈니스 로직을 담당하는데, Service와 의미가 겹치지 않나 싶었고보통 django에서는 view에서 처리한 데이터를 Model을 통해 넣는다던지 아니면 model을 통해 가져온 데이터를 view로 하여금 template에 전달한다는 느낌이었는데 오늘 강의의 그림을 보니 controller -> model -> view 인 것 처럼 보여서 그러면 MTV의 M과 MVC의 M은 또 많이 다른건가 싶었습니다. 심지어 이것을 더욱 헷갈리게 하는 것이 Repository인데... MVC인데 뭔가 MVC+Service+Repository인건가 싶기도 하고 헷갈리네요 ㅠㅠService - Controller : 프로젝트가 거대해지면 비즈니스로직은 서비스에서 처리하고 컨트롤러는 서블릿 형태의 역할로만 남는건가 싶기도 하고(추측)Model-Repository : 레포지토리가 아무리 봐도 후에 JPA ORM을 사용할 수 있는 영역일 것 같은데, 그렇다면 오늘 강의의 그림에서 보여진 Model은 단순히 컨트롤러에서 View로 데이터 전달을 위한 임시보관소인가 싶습니다. Model은 그림상 DB랑 연결되는 느낌은 없는데.. 아니면 Model은 껍데기고 Model이 리포지토리에 구축된 JPA ORM을 이용해서 DB랑 통신하는 개념일지... 질문이 장황한데... 헷갈려서 그렇네요 답변 주시면 감사하겠습니다:)
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
글로벌 Validatior, Bean Validation
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.안녕하세요. 선생님 학습 도중 이해가 되지 않아 질문 드립니다. 1. 스프링 부트는 자동으로 글로벌 Validator로 등록한다.위 말은 즉, 글로벌 Validator가 Bean Validation인가요 ?2. 필드 타입 오류의 발생유무의 상관없이 글로벌 Validator는 적용되고 Bean Validation(ex : itemValidator)는 적용이 되거나/안되거나 인가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
gradle build가 버전문제로 안되요.
[질문 내용]안녕하세요! 해당 강의를 듣던 와중에 (1:24까지 들었다가 막혔습니다.) 더이상 진도를 못나가게되어 질문드립니다. 자바 버전 추천하는게 55.0 까지인거 같은데, 저의 자바 클래스 파일 버전은 61이라서 에러가 나면서 그레이들 빌드가 되고 있지 않습니다. 어떻게 해야할까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
was vs 서블릿 컨테이너
톰캣 처럼 서블릿을 지원하는 was를 서블릿 컨테이너 라고 하셨는데 그럼 서블릿 컨테이너와 was는 차이가 없는 건가요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
saveFile 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.@PostMapping("/upload") public String saveFile(@RequestParam("itemName") String itemName, @RequestParam("file") MultipartFile file) throws IOException { if (!file.isEmpty()){ String fullPath = fileDir + file.getOriginalFilename(); log.info("파일저장 fullPath={}",fullPath); file.transferTo(new File(fullPath)); } return "upload-form"; }SpringUploadController 에 있는 savFile 입니다. @RequestParam String itemName 없어도 되는거죠 ?@RequestParm MultipatrFile file은 현재 파일이 빈값인지 아닌지 확인해야하기때문에 필요한거같은데 itemName은 필요가없을거같아서요 view단에서 값을 넘겨야하는것도 없는거같구요 답변 부탁드립니다 ~
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
intellij 기동상에는 문제 없지만, 서버가 계속 도는 현상
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요, 영한쌤 !!현재 제가 듣고 있는 강의는,"스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술"섹션 1. 프로젝트 환경설정 - View 환경설정입니다.intellij에서 기동은 되고 페이지도 잘 뜨고 ㅣ있지만, 현재 계속 서버가(tomcat?) 돌아가고 있는 모습이 보여서 질문드립니다. 이게 정상은 아닌거같아서요. 어떤 설정으로 변경해야할까요?그리고 기동을 중지했을때, 이런 빨간색 에러 표시가 납니다.강의듣는덴 문제가 없지만 어떤 오류인지 뭐가 잘못됬는지 알고 싶습니다. 감사합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
application.properties 코드 질문(Failed to initialize JPA EntityManagerFactory)
[질문]은 굵은 글씨로 표시해 두었습니다.application.properties에 강의에서 나온 대로 입력하였는데, 아래와 같은 에러가 발생하였습니다.j.LocalContainerEntityManagerFactoryBean : Failed to initialize JPA EntityManagerFactory: 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)검색을 해보니, Hibernate가 H2 데이터베이스 Dialect을 자동으로 인식하지 못하기 때문이라 하여 아래와 같은 코드를 추가하여 문제를 해결하였습니다.spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.H2Dialect최종적으로 스프링부트어플리케이션도 잘 작동하고, 테스트코드도 통과하였습니다. 본 강의에서는 5줄 만으로도 코드가 잘 작동하는데, 왜 저는 H2 데이터베이스를 명시적으로 설정하는 코드를 추가로 작성해야 하는지 궁금합니다. 최종 application.properties 코드spring.datasource.url=jdbc:h2:tcp://localhost/~/test spring.datasource.driver-class-name=org.h2.Driver spring.datasource.username=sa spring.jpa.show-sql=true spring.jpa.hibernate.ddl-auto=none spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.H2Dialect질문용 파일 : https://drive.google.com/file/d/1JpK0g8GjAL0quy9aOx-EMB8nF599Tk-U/view?usp=sharing=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테이블 member 해결 불가 오류
JdbcTemplateMemberRepository 클래스에서 해당 오류가 발생하는데 테스트 실행에는 영향을 주지 않습니다 이 오류는 왜 발생하는 건가요? 그리고 어떻게 해결하는지 알려주시면 감사하겠습니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
파일 실행이 안됩니다.
이런 화면이 뜨면서 실행키를 누를 수 없는 상태인데 어떻게 진행해야 될될까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
index.html때문에 빌드 실패한다는데 도와주세요
왜이럴까요..?index.html을 지워도 복구해도 절대 빌드가 안됩니다 ㅠㅠ
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
ResponsEntity 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.@RequestMapping(value = "/error-page/500", produces = MediaType.APPLICATION_JSON_VALUE) public ResponseEntity<Map<String, Object>> errorPage500Api(HttpServletRequest request, HttpServletResponse response) { log.info("API errorPage 500"); Map<String, Object> result = new HashMap<>(); Exception ex = (Exception) request.getAttribute(ERROR_EXCEPTION); result.put("status", request.getAttribute(ERROR_STATUS_CODE)); result.put("message", ex.getMessage()); Integer statusCode = (Integer) request.getAttribute(RequestDispatcher.ERROR_STATUS_CODE); return new ResponseEntity(result, HttpStatus.valueOf(statusCode)); }위의 코드를 강의에서 나온 ResponseEntity 대신해서@ResponsBody를 활용해서 json처럼 뿌려줄수있게 사용할수는 없나요 ?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
회원 서비스 테스트
코드 다 입력하고 실행했는데 MemberService memberService; ^ symbol: class MemberService location: class MemberServiceTest이런 오류가 납니다어떻게 해결해야 하나요?
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
uvicorn main:app --reload 실행 불가
강의 준비를 위한 FastAPI 개발환경 설정 uvicorn main:app --reload이 명령어를 입력하면 아래의 에러가 나는데요. python -m uvicorn main:app --reload이 명령어로 서버 실행을 하고 있는데 상관 없을지요. PATH 변수 수정을 했지만 계속 아래의 에러가 나네요. uvicorn : 'uvicorn' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확인하고 경로가 포함된 경우 경로가 올바른지 검증한 다음 다시 시도하십시오.위치 줄:1 문자:1+ uvicorn main:app --reload+ ~~~~~~~ + CategoryInfo : ObjectNotFound: (uvicorn:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
java.lang.Thread$Builder 에러
스프링 mvc 1편을 들으며, 라이브 코딩하고 있는 수강생입니다. 13강 HttpServletRequest - 기본 사용법 강좌의 7분 46분 내용까지 코딩을 따라서 쳐본 후, 프로그램을 구동했더니 java.lang.ClassNotFoundException: java.lang.Thread$Builder at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) ~[na:na] at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) ~[na:na] 다음과 같은 에러가 로그창에 떠있습니다. 왜 이런거죠?...해결법을 모르겠습니다
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
빌드가 안돼요
여러가지 바꿔가면서 입력해봐도 다 안 돼요윈도우 사용중이에요