[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 안녕하세요! 강의를 듣고 DataSource의 최대 장점이 추상화라고 이해했습니다. 사용하는 입장에서는 구현부에 의존하지 않아도 된다는 것인데요. 그런데 실무에서는 과연 DataSource 구현체를 갈아끼우는 일이 잦은지 궁금합니다. 여러 후보군들 사이에서 HikariCP와 같은 커넥션 풀이 압도적으로 우세하다면, 커넥션 개수와 같은 DataSource 설정을 변경하는 일은 있을 수 있어도 DataSource 구현체 자체를 변경하는 일은 적지 않을까 생각이 들어서요!
최신 버전 설치 후에 강의노트를 나중에 보고 다시 설치했는데요. ~/ test.mv .db 삭제했는데도, 버전 재설치 이후에 데이터베이스 파일 생성이 안 됩니다 ㅠ 아이피가 문제인가 해서 localhost로 변경했는데도 안 되네요ㅠ 그런데 실행 시에 링크가 강사님꺼랑 다른 것 같은데 이게 문제일까요?? http://localhost:8082/index.do?jsessionid=016c01f762758d1f2da3477997f381a2&language=ko 강사님처럼 키가 안적혀있고 이런 링크로 연결되요..
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. MemberContoller 의 create 함수는 MemberForm 객체를 매개변수로 받는데 MemberForm 객체 이외의 다른 객체를 사용할 수 있는 지 궁금합니다. MemberForm 클래스는 MemberContorller와 같은 controller에 존재하는가요? MemberForm 클래스는 name 이외의 다른 프로퍼티가 있더라도 정상 작동하는 것인가요? MemberForm 클래스에 name 프로퍼티가 존재하지 않는다면 데이터는 MemberFrom에 남지않고 사라지는 것인가요? Addattribute와 비슷하게 MemberForm에 name 프로퍼티가 추가되는 것인가요 create 함수에 들어오는 매개변수를 지정하지 않는 이유는 무엇인가요? 즉, 스프링이 객체도 생성해주고 setter를 통해서 프로퍼티에 값도 넣어줄 때 이전에 이 객체를 사용하겠다라고 명시하는 부분이 없는데 정상 동작하는 이유가 궁금합니다.
다른 분들은 설치 잘 되나요? 구글검색해도 방화벽, 백신 등 문제라고 하는데 이것저것 해봐도 안되네요~ 저 url은 정상인건지??? HTTP Server 'Bad Gateway' : http://propedit.sourceforge.jp/eclipse/updates/content.xml HTTP Server 'Bad Gateway' : http://propedit.sourceforge.jp/eclipse/updates/content.xml HttpComponents connection error response code 502. Unable to read repository at http://propedit.sourceforge.jp/eclipse/updates/site.xml . Unable to read repository at http://propedit.sourceforge.jp/eclipse/updates/site.xml . PKIX path validation failed: java.security .cert.CertPathValidatorException: validity check failed
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 솔직히 인터페이스 처음 설정에 대한 내용이 하나도 이해가 가질 않네요.. SpringDataJPA가 JpaRepository를 상속 받은 SpringDataJpaMemberRepository에 대한 구현체를 스프링 빈으로 등록해준다는 건 알겠는데, JpaRepository<Member, Long>에 있는 Member와 Long은 어떤 역할을 하기에 들어가는 것이며, 그 뒤에 함께 상속받는 MemberRespository는 어떤 역할을 하기위해 상속되는 건지 궁금합니다. 기초적인 질문을 드려 죄송합니다만, GPT도 설명을 제대로 안해주기에 정말 모르겠어서 이렇게 질문드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 8분 20초 쯤에 JpaRepository 인터페이스로 들어가볼 때 강사님의 인터페이스 내용과 제 JpaRepository 인터페이스의 내용이 달라요. 저는 findById()도 없고, findAll() 메서드의 리턴타입도 <S extends T> List<S> 이렇게 생겼고, 뭔가 강사님의 화면에서는 보이지 않는 잡다한 것들이 너무 많아요. 저의 JpaRepository 인터페이스는 왜 이렇게 뜨는 걸까요ㅠㅠ 사진 첨부합니다. 위 사진이 저의 JpaRepository 전체 입니다.
안녕하세요. 좋은 강의를 감사히 듣고 있는 학생입니다. 다름이 아니라 이번에 실무에 가까운 프로젝트를 하면서 Common Error Page (Custom Error Page) 가 필요하다는 얘기를 듣게 되었습니다. 어떤 에러가 발생하는 경우에 기본적인 에러 화면이 아닌 디자인 된 에러 페이지로 항상 가야한다는 요청 사항인데 이건 static 인가요 template 인가요? 어떻게 구현하나요?
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 제가 이해한 바로는 request.getSesison 을 통해 얻는 HttpSession 은 SessionManager 와 비교하면 createSession 동작이 아니라 sessionStore 와 같은 개념의 저장소를 호출하는 것 같고, HttpSession 의 setAttribute 동작이 createSession 의 sessionStore.put 과 같은것이며 request.getSesison 를 통해 null 이 아닌 session 이 처음 만들어질 때, response 에 어떤 클라이언트의 sessionStore(HttpSession) 인지 구분하는 id 가 쿠키로 담기는 것 같은데 이렇게 이해하는게 맞을까요?
완전탐색 강의 마지막 문제 1090번 문제 풀이 방법에 의문이 생겨서 질문 올려봅니다. 강의에서는 우리의 집 중에서 한 곳에 모이면 된다고 풀이를 하셨는데, 예시에 나온 4 15 14 15 16 14 15 16 15 4명이 모이기 위한 최적의 장소는 (15,15)입니다. 백준에서도 이것이 정답 좌표이고. 그래서 혹시 제가 1번 2번 3번 아이디어를 이해하는데에서 잘못 이해한 부분이 있을까 싶어 질문을 올립니다. (15 14) (15 16) (14 15) (16 15) 중에 하나에 모인다는 말이 아닌것인가요?
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 트랜잭션이 실제 적용되고 있는지 확인하는 방법에서 TxApplyBasicTest 코드 짤때요 BasicService 프록시 객체가 스프링빈으로 자동등록되는데 왜 굳이 @TestConfiguration 에서 BasicService를 수동으로 빈 등록을 하는건가요?? 안해도 되는거 아닌가요? 어차피 프록시 객체가 등록되어있어서 @Autowired로 의존관계 주입받을 수 있지 않나요??
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] ACID 중 일관성에 대한 질문이 있습니다. 자료를 보면 "데이터베이스에서 정한 무결성 제약 조건을 항상 만족해야한다" 라고 작성되어 있는데요. name 컬럼을 가진 테이블이 있고 해당 컬럼은 null 값을 허용하지 않는다는 제약조건을 가진다고 가정하겠습니다. 트랜잭션이 진행되는 과정에서 name 이 null 로 변경되었다가 최종적으로 트랜잭션이 종료되기 전에 name 에 값이 채워진다면 이 부분도 일관성을 만족하지 못한다고 할 수 있을까요? 아니면 트랜잭션이 종료되는 시점에는 제약조건을 만족했으니 일관성을 만족한다고 보는걸까요? 만약 일관성을 만족하지 못하는 것이라면 해당 트랜잭션은 rollback 되나요?
파일 업로드 예제를 진행하던 와중에 .pdf 파일이나 동일하지만 사이즈가 작은 스크린샷 .png 까지는 정상적으로 업로드 되는데 올려드린 다음과 같은 파일을 업로드 시도하는 경우 whitelabel error 페이지가 뜨면서 업로드가 정상적으로 실행이 되지 않습니다 해당 파일의 메타데이터는 다음과 같은데.... 2023-08-23 17:00:14.790 ERROR 9800 --- [nio-8080-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.web.multipart.MaxUploadSizeExceededException: Maximum upload size exceeded; nested exception is java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.impl.FileSizeLimitExceededException: The field file exceeds its maximum permitted size of 1048576 bytes.] with root cause 다음과 같은 이유였네요 생각보다 스프링이 기본적으로 허용하는 사이즈가 작은가봅니다 혹시라도 다른분이 도움되실까 싶어 남겨놓겠습니다
DefaultConversionService 가 왜 ISP 원칙에 연관되어있는지 잘 이해가 가지 않아 질문드립니다. 결론적으로 ISP의 경우 인터페이스 분리 원칙, 클라이언트가 자신이 이용하지 않는 메서드에 의존하지 말아야한다인데 DefaultConversionService 의 경우 사용과 등록을 모두 사용하고 있습니다, 따라서 두 가지 기능을 모두 사용하게 되는데 결국 두개 다 사용하게 되면 애초에 인터페이스를 분할할 필요가 없게 되는것이 아닌지 궁금합니다. 두 개를 분리함으로써 얻게되는 이득에 대해서 다시 한번만 설명이 가능하실지 궁금합니다 ㅠㅠ 감사합니다!
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]package hello.servlet.web.frontcontroller; import jakarta.servlet.RequestDispatcher; import jakarta.servlet.ServletException; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import javax.sql.rowset.serial.SerialException; import java.io.IOException; //각 컨트롤러에서 했던 것을 MyView로 만들어서 넘긴다. public class MyView { private String viewPath; public MyView(String viewPath){ this.viewPath=viewPath; } public void render(HttpServletRequest request, HttpServletResponse response) throws SerialException, IOException, ServletException { RequestDispatcher dispatcher = request.getRequestDispatcher(viewPath); dispatcher.forward(request,response); } } Myview 코드를 작성할 때도, 강의와 다르게 forward 부분에서 오류가 발생해서 throws ServletException을 추가헀습니다. 그 이후에, package hello.servlet.web.frontcontroller.v2; import hello.servlet.web.frontcontroller.MyView; import hello.servlet.web.frontcontroller.v2.controller.MemberFormControllerV2; import hello.servlet.web.frontcontroller.v2.controller.MemberListControllerV2; import hello.servlet.web.frontcontroller.v2.controller.MemberSaveControllerV2; import jakarta.servlet.ServletException; import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.HashMap; import java.util.Map; // @WebServlet(name="frontControllerServletV2", urlPatterns = "/front-controller/v2/*") ///front-controller/v1/* 라고 경로를 설정하면 v1 하위에 있는 어떤 웹은 전부 " FrontControllerServletV1 " 서블릿 호출이 된다. public class FrontControllerServletV2 extends HttpServlet { private Map<String, ControllerV2> controllerMap = new HashMap<>(); public FrontControllerServletV2() { controllerMap.put("/front-controller/v2/members/new-form", new MemberFormControllerV2()); controllerMap.put("/front-controller/v2/members/save", new MemberSaveControllerV2()); controllerMap.put("/front-controller/v2/members", new MemberListControllerV2()); } @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ String requestURI = request.getRequestURI();//URI를 바로 받을 수 있음. ControllerV2 controller = controllerMap.get(requestURI);// front-controller/v1/members if(controller==null){ response.setStatus(HttpServletResponse.SC_NOT_FOUND); return; } MyView view = controller.process(request, response); view.render(request,response); } } 위와 같이 코드를 작성하고 view.render을 사용할 때, 오류가 발생하고 인텔리 제이에서 제공하는 오류 해결 방법을 사용했는데도 웹 페이지에 가면 정상적으로 동작하지 않습니다. 설명 부탁드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 이런 문구가 떠서 그런데요 그래서 java17로 모든 파일의 내용을 복사해서 새로운 프로젝트를 만든 다음에 java17로 진행해야 할지, 아니면 자바11 해야 되는지 고민입니다. 근데 자바 17에서 자바 11로 저번에 하려다가 실패해고, 이 파일에만 자바 17로 실행하는 방법이 없어서 어떻게 해야 할지 모르겠네요 ㅠㅠ
안녕하세요. 개인프로젝트를 하면서 질문이 생겨 올립니다. 데이터베이스에 게시글테이블과 첨부파일테이블이 있다면 두 개는 각각 다른 어그리거트로 놓는게 좋을까요? (게시글 수정과 첨부파일 추가는) 게시글을 쓴 사람뿐만 아니라 권한이 있는 누구나 할 수 있게 구현할 예정입니다. 예를 들어, jira와 비슷하게 구현하려고 합니다.