커넥션을 요청하고 반환받는건 서버와 DB 사이의 작용이라고 생각해서 커넥션 구현체를 클라이어트에 반환한다는 부분이 이해가 잘 안 갑니다! 클라이언트라는 단어가 단순히 웹 클라이언트로 쓰이는 것뿐만 아니라 요청하는 쪽을 지칭할 때 쓰는거라고 보면 될까요? 여기선 애플리케이션 로직 즉, Connection 객체를 사용하는 저의 애플리케이션 코드를 의미하는 걸까요?
dev 프로퍼티 파일에 app.host 를 정의하지 않고 dev 환경으로 실행후, 메일을 보낼시 host 값이 http:// localhost:8080 으로 어떻게 넣어지는건가요? dev 프로퍼티 파일에 정의가 안되어 있으면 local 프로퍼티 파일을 참조하게 되는것인가요...?
엊그제 정보처리기사 시험을 처음 보게되었습니다. 한 장에 시험 문제가 1~2개 정도 있고 밑에 풀이란이 있습니다. 이때 문제를 풀때 풀이란에만 풀지 않고, 각 문제 옆에 빈공간에 도 풀었는데 감점 혹은 탈락 요인인가요? EX)코드가 있는 경우 각 코드 옆에 변수값 표시 등. 정답을 적는 곳 부근에는 따로 풀이나 표시 등은 하지 않았습니다.
1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요, 강의 수강 중 질문이 생겨 여쭤봅니다 ! http 요청 데이터 - api 메시지바디 -json 강의에서 등장하는 코드 HelloData helloData = objectMapper.readValue(messageBody,HelloData.class);라는 부분은 스트링의 messageBody라는 변수를 json 객체로 변환하는 것인가요, 아니면 json객체인 messageBody를 hellodata 타입 객체로 변환하는 것일까요 ?
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
태현님 안녕하세요 좋은 강의 잘 듣고 있습니다. 수강하면서 실습 진행하면서 3번 정도 mysql 연결 오류가 발생해서 gpt를 통해 해결해보려고도 하고 구글링도 해보았지만 근본적인 해결이 안되어 고민 끝에 질문 남깁니다. 우선, 문제 상황을 말씀드리면 mysql 설치 후 인텔리제이에서 연결도 잘되어 실습을 진행하다 [S1009] !AuthenticationProvider. BadAuthenticationPlugin! 라는 메시지가 뜹니다. mysql 8.0 CLI-Unicode 에 들어가서 초기에 설정한 비밀번호를 입력하면 바로 unicode가 종료되어 진입 조차 불가능합니다. cmd 실행하여 mysql -u root -p 명령을 입력해서 정확한 비밀번호를 입력하면 ERROR 2059 (HY000): Authentication plugin 'auth_gssapi_client' cannot be loaded: ÁöÁ¤µÈ ¸ðµâÀ» ãÀ» ¼ö ¾ø½À´Ï´Ù. 에러 메시지가 뜹니다. 최후의 수단으로 mysql 관련 모든 파일 및 프로그램 삭제 후 재설치하여 인텔리제이 연동해서 실습이 정상적으로 진행이 되다가 랩탑을 몇 번 껐다 키면 위의 문제가 반복됩니다. 왜 저런 문제가 발생하고, 어떻게 해야 해결이 가능할까요..? 지금까지는 완전 삭제 및 재설치하여 db 테이블 구성을 처음부터 다 다시 하면서 실습을 어떻게든 따라했지만 근본적인 해결책을 찾고 싶어 질문 드립니다.
[질문 내용] 1. <td><a href="items.html" th:href="@{/basic/items/{itemId}(itemId=${ item.id })}" th:text="${ item.id }">회원id</a></td> <td><a href="items.html" th:href="@{/basic/items/${ item.id }}" th:text="${item.itemName}">상품명</a></td> 2에 리터럴 대체를 위한 ||를 씌운 방식 혹시나하여 2 방식으로 표현해보니, 1과 동일한 url link를 생성하였습니다. 셋 중 가장 권장하는 방식은 어떤 것이고, 그 이유는 무엇인가요? 2도 정상작동하는 것 같은데, ||을 꼭 씌워야하나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 강의 내용 4:53초 경 "서블릿 컨테이너가 request, response 객체를 만들어서 이 서블릿에 던져준다" 이 말은 아래의 단계 중에서 웹 브라우저에서 먼저 localhost:8080/hello 로 요청을 보냄 WAS 에서는 요청 메시지를 기반으로 방금 본 request , response 객체를 만들어냄 이후 서블릿 컨테이너를 통해서 만들어낸 request , response 객체를 파라미터로 넘기면서 helloServlet 을 실행함 helloServlet 의 실행이 끝나고 리턴값 response 이 있을텐데, 이것을 바탕으로 HTTP 응답 메시지를 만들어냄 웹 브라우저에게 응답 메시지를 전달함. 이후 서블릿 컨테이너를 통해서 만들어낸 request, response 객체를 파라미터로 넘기면서 helloServlet 을 실행함 이 부분에 해당하는 내용인가요? request와 response 객체를 만들어서 특정 서블릿(ex.helloServlet)에게 넘겨주고 리턴값(response)가 WAS에게 반환되고 HTTP 응답 메시지를 생성한 뒤에 웹 브라우저에게 전달 이것이 맞는 내용인가요? 또한, 아래 부분에 @Override 가 있다는 건 @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { HttpServlet 파일 속에 해당 메서드가 존재한다는 의미기에 찾아보았는데 protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String method = req.getMethod(); if (method.equals("GET")) { long lastModified = this.getLastModified(req); if (lastModified == -1L) { this.doGet(req, resp); } else { long ifModifiedSince; try { ifModifiedSince = req.getDateHeader("If-Modified-Since"); } catch (IllegalArgumentException var9) { ifModifiedSince = -1L; } if (ifModifiedSince < lastModified / 1000L * 1000L) { this.maybeSetLastModified(resp, lastModified); this.doGet(req, resp); } else { resp.setStatus(304); } } } else if (method.equals("HEAD")) { long lastModified = this.getLastModified(req); this.maybeSetLastModified(resp, lastModified); this.doHead(req, resp); } else if (method.equals("POST")) { this.doPost(req, resp); } else if (method.equals("PUT")) { this.doPut(req, resp); } else if (method.equals("DELETE")) { this.doDelete(req, resp); } else if (method.equals("OPTIONS")) { this.doOptions(req, resp); } else if (method.equals("TRACE")) { this.doTrace(req, resp); } else { String errMsg = lStrings.getString("http.method_not_implemented"); Object[] errArgs = new Object[1]; errArgs[0] = method; errMsg = MessageFormat.format(errMsg, errArgs); resp.sendError(501, errMsg); } } 왜 위와 같은 코드를 굳이 재정의 해야만 했는지가 궁금합니다.. 아직 강의를 모두 수강하지 않아서 가지게 되는 궁금증일 수도 있겠지만 혹시나 너무 뜬구름 잡는 질문이 아니라면 간단하게나마 설명을 부탁드려도 될까요?.. 흐름상 이해를 해보았는데 확신이 들지 않아서 이런 바보같은 질문을 해봅니다.. 감사합니다..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. https://inf.run/2ruuR 전에 올렸던 질문 내용입니다. https://drive.google.com/file/d/1oNHG9872eU7vUZrH3xx3DKPfJGPuFcnZ/view?usp=sharing 파일 첨부해서 다시 올립니다. 감사합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 프로젝트 생성 중에 궁금한게 있어서 질문 드립니다. 기존에는 영한님의 강의 중에서 프로젝트 생성 시 저는 Gradle - Groovy로 생성했었는데 이번에는 Gradle - Kotlin 으로 생성해보려 하는데 괜찮을까요 ??