[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 제껏 스프링 버전이 3점대라서 자바 버전인 source를 쓰지를 못하고 toolchain만 가능 하더라고요 그래서 그런지 실행을 하려고 했으나 위에 경고문과 같이 18버전이상부터 실행을 할 수 있게 만들어 놓은것 같은데 이런 상황에서는 어떻게 처리해야 할까요?
원래는 장고 프레임워크를 주로 이용했었습니다. 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랑 통신하는 개념일지... 질문이 장황한데... 헷갈려서 그렇네요 답변 주시면 감사하겠습니다:)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 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)는 적용이 되거나/안되거나 인가요?
[질문 내용] 안녕하세요! 해당 강의를 듣던 와중에 (1:24까지 들었다가 막혔습니다.) 더이상 진도를 못나가게되어 질문드립니다. 자바 버전 추천하는게 55.0 까지인거 같은데, 저의 자바 클래스 파일 버전은 61이라서 에러가 나면서 그레이들 빌드가 되고 있지 않습니다. 어떻게 해야할까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 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단에서 값을 넘겨야하는것도 없는거같구요 답변 부탁드립니다 ~
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요, 영한쌤 !! 현재 제가 듣고 있는 강의는, "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 섹션 1. 프로젝트 환경설정 - View 환경설정 입니다. intellij에서 기동은 되고 페이지도 잘 뜨고 ㅣ있지만, 현재 계속 서버가(tomcat?) 돌아가고 있는 모습이 보여서 질문드립니다. 이게 정상은 아닌거같아서요. 어떤 설정으로 변경해야할까요? 그리고 기동을 중지했을때, 이런 빨간색 에러 표시가 납니다. 강의듣는덴 문제가 없지만 어떤 오류인지 뭐가 잘못됬는지 알고 싶습니다. 감사합니다.
[질문]은 굵은 글씨로 표시해 두었습니다. 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. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 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처럼 뿌려줄수있게 사용할수는 없나요 ?
강의 준비를 위한 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편을 들으며, 라이브 코딩하고 있는 수강생입니다. 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] 다음과 같은 에러가 로그창에 떠있습니다. 왜 이런거죠?... 해결법을 모르겠습니다
build and run using, run tests using을 Gradle(default)로 하든 IntelliJ IDEA로 바꾸든 실행은 되는데 작업이 종료가 안되고 계속 돌아갑니다. 위에 오류는 너무 오래 걸려서 중간에 제가 종료하면 뜨는 오류 메세지입니다 5분 넘게 걸리는데 원래그런건지 모르겠습니다 ㅠㅠ 실행도 한 번도 성공한 적도 없습니다 제 노트북 사양이 나빠서 그런걸까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. Item 클래스의 기본 생성자를 만드는 이유가 무엇인가요?