게시글
질문&답변
수업자료 오타 확인 부탁드립니다.
시원님 고맙습니다 🙂다음 버전에 패치할게요!
- 0
- 2
- 48
질문&답변
템플릿 메서드 패턴에 interface를 적용하면 장단점이 뭐가 있을까요?
안녕하세요. Teo님디폴트 메서드는 주로 하위 호환을 유지하기 위한 목적으로 나온 것인데요. 자바 고급 3편에서 정리한 내용을 남겨드릴게요. 주의사항 1. 하위 호환성을 위한 최소한의 활용 – 불필요하게 디폴트 메서드를 남발하면 인터페이스 역할이 애매해지고 복잡해질 수 있음 2. 인터페이스 본연의 추상화 목적 유지 – 인터페이스는 여전히 계약(Contract) 역할에 충실해야 하며, 복잡한 로직은 클래스 쪽에 두는 것이 바람직 3. 다중 상속(충돌) 문제 – 여러 인터페이스에서 동일 시그니처의 디폴트 메서드가 있을 경우, 구현 클래스에서 반드시 충돌을 해결해야 함 4. 상태(state)를 두지 말 것 – 디폴트 메서드는 메서드 구현부만 제공하는 것이며, 인터페이스에 인스턴스 상태를 가지는 것은 지양결국 디폴트 메서드는 인터페이스의 확장성을 높이면서도, 기존 코드와의 하위 호환성을 보장하기 위한 자바의 주요한 언어적 지원이다. 다만 이를 활용할 때는 인터페이스의 추상화 역할을 흐리지 않도록 주의 깊은 설계가 필요하다.따라서 무분별한 사용은 지양하고, 가급적 간단한 공통 기본 동작이나 이미 사용 중인 인터페이스를 확장할 때만 제한적으로 사용하는 것이 좋다.감사합니다.
- 0
- 2
- 31
질문&답변
SpringMemberFormControllerV1 @Component + @RequestMapping 시 404 에러
안녕하세요. 김이나님강의 메뉴얼에 있는 다음 내용을 참고해주세요 🙂주의! - 스프링 3.0 이상스프링 부트 3.0(스프링 프레임워크 6.0)부터는 클래스 레벨에 @RequestMapping이 있어도 스프링 컨트롤러로 인식하지 않는다. 오직 @Controller가 있어야 스프링 컨트롤러로 인식한다. 참고로 @RestController는 해당 애노테이션 내부에 @Controller를 포함하고 있으므로 인식 된다. 따라서 @Controller가 없는 위의 두 코드는 스프링 컨트롤러로 인식되지 않는다. RequestMappingHandlerMapping에@RequestMapping는 이제 인식하지 않고, Controller만 인식한다.) 감사합니다.
- 0
- 2
- 32
질문&답변
클래스 메서드가 함수가 아닌 이유
안녕하세요. 최용준님생각하신 내용이 맞습니다 🙂감사합니다.
- 0
- 1
- 39
질문&답변
jpa batchsize 관련 문의입니다
안녕하세요. 이호준님바로 정답을 말씀드리면 좋겠지만, 개발자는 본인이 의심되는 부분을 스스로 확인하고 테스트 해 볼 때 공부한 내용을 진짜 자신의 지식으로 만들 수 있습니다.확인하고 싶은 시나리오 대로 가상의 데이터를 DB에 저장하고, 실행되는 SQL의 수를 확인해보시겠어요? 그리고 추가로 관련된 결과를 남겨주시면 다른 분들께도 도움을 주실 수 있을거에요 🙂참고로 .setMaxResults(3) 부분은 제거하셔야 정확한 테스트를 하실 수 있을거에요.감사합니다.
- 0
- 1
- 26
질문&답변
자원정리 이후 메인 스레드 종료
안녕하세요. eovnfjfpa님클라이언트를 모두 종료하더라도 서버는 살아있어야 합니다. 이후에 다른 클라이언트가 접속할 수 있어야 하기 때문이지요.따라서 서버의 경우 종료가 필요한 시점에, 서버를 별도로 종료하는 방법이 필요합니다.관련해서 AI 인턴의 답변을 참고해주세요 🙂감사합니다.
- 0
- 2
- 35
질문&답변
영속성 컨텍스트 역할
안녕하세요. 황은경님네 맞습니다 🙂 두 가지 역할을 모두 수행합니다.조회 관점에서 캐시 역할을 제공하고, 여러 데이터를 모아서 저장하는 관점에서는 버퍼 기능도 제공합니다.감사합니다.
- 0
- 1
- 41
질문&답변
logback을 파일을 추가했음에도 로그 출력안되는 문제
안녕하세요. yoon6669님도움을 드리고 싶지만 질문 내용만으로는 답변을 드리기 어렵습니다.실제 동작하는 전체 프로젝트를ZIP파일로 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.추가로 어떤 로그가 어떻게 나오지 않는지, 해당 부분을 확인할 수 있는 실행 방법과 현재 상황과 현재 나오는 로그들을 알려주세요. 구글 드라이브 업로드 방법은 다음을 참고해주세요.https://bit.ly/3fX6ygx 주의: 업로드시 링크에 있는 권한 문제 꼭 확인해주세요 추가로 다음 내용도 코멘트 부탁드립니다.1. 문제 영역을 실행할 수 있는 방법2. 문제가 어떻게 나타나는지에 대한 상세한 설명 (오류 화면, 오류 로그 포함)링크: 공식 서포터즈링크: 자주하는 질문감사합니다.
- 0
- 2
- 49
질문&답변
에러
안녕하세요. 복재환님도움을 드리고 싶지만 질문 내용만으로는 답변을 드리기 어렵습니다.실제 동작하는 전체 프로젝트를ZIP파일로 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.구글 드라이브 업로드 방법은 다음을 참고해주세요.https://bit.ly/3fX6ygx주의: 업로드시 링크에 있는 권한 문제 꼭 확인해주세요 추가로 다음 내용도 코멘트 부탁드립니다.1. 문제 영역을 실행할 수 있는 방법2. 문제가 어떻게 나타나는지에 대한 상세한 설명 (오류 화면, 오류 로그 포함) 링크: 공식 서포터즈링크: 자주하는 질문감사합니다.
- 0
- 2
- 29
질문&답변
해결요망
안녕하세요. 복재환님다음 링크를 참고해주세요 🙂https://inf.run/qxqv1감사합니다.
- 0
- 2
- 36