묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
강의에 나온 테이블 외 이상한 테이블 문의
안녕하세요. 아래와 같이 이상한 테이블이 생기는데 이건 왜 생기는건가요?
-
미해결실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
./gradlew test 실행시 인식할수 없다고 뜹니다.
제목 그대로 ./gradlew test 실행시 인식할수 없다고 뜹니다. 이 경우 gradlew이 설치되지 않아서 발생하는 문제인지 궁금합니다.
-
미해결실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
test 코드 실행시 경고가 발생합니다.
test 코드 실행시 12월 30, 2024 10:47:24 오후 org.junit.platform.launcher.core.EngineDiscoveryOrchestrator lambda$logTestDescriptorExclusionReasons$7INFO: 0 containers and 3 tests were Method or class mismatch라는 경고 메시지가 뜹니다. test 코드가 돌아가는 데 큰 무리는 없지만 개인적으로 궁금해서 질문드립니다.
-
해결됨토비의 스프링 6 - 이해와 원리
인터페이스 사용에 관하여 질문드립니다.
안녕하세요 토비님. 올해 토비님의 인프콘 발표내용중 마지막 부분에, 무조건 인터페이스를 사용하라 라고 하신 것에 대해 왜 무조건 인터페이스를 사용해야 하는지 궁금합니다. 평소 저의 생각은 구현체가 한개라면 굳이 인터페이스로 분리할 필요는 없다고 생각했습니다. 구현체가 두개 이상이 되었을때 인터페이스로 분리해도 충분하다고 생각했었는데요. 토비님께서 아주 단호하게 말씀하셔서, 어떤 관점에서 인터페이스를 꼭 사용해야 하는지 궁금하여 질문을 남기게 되었습니다.언제나 좋은 강의 만들어 주셔서 감사합니다.!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
프로젝트 실행 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]HelloSpringApplication 에서 run 버튼을 클릭하면 다음과 같은 오류가 발생합니다. 어떻게 해야 하나요?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
DTO 관련 질문 드립니다!
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 항상 강의 잘 보고 있습니다@RequestMapping("/api/v2/members") public CreateMemberResponse saveMemberV2(@RequestBody @Valid CreateMemberRequest request){ Member member = new Member(); member.setName(request.getName()); Long id = memberService.join(member); return new CreateMemberResponse(id); } @Getter static class CreateMemberResponse{ private Long id; public CreateMemberResponse(Long id) { this.id = id; } }이 부분에서 보면 하나의 class 안에서 DTO도 만들던데 보통 실무에서도 해당 기능 관련 DTO는 static class로 내부에 만드나요? 아니면 따로 분리하나요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
MemberRepository 질문있습니다!
MemberRepository 는 싱글톤으로 관리가 될 텐데 static으로 store, sequence 선언하는 이유가 있나요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
return ModelAndView
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. return new ModelAndView()를 할때 그대로 정상 리턴된다는 말씀을 제가 제대로 이해한게 맞는지 여쭤보고 싶습니다.response.sendError를 가지고 return new ModelAndView()를 하게 되면 view랜더링 없이 was로 돌아가게 되서 다시 error를 확인하고 그에러에맞는 컨트롤러로 보내는걸로 알고있습니다. 그러면 원래 스프링이 정상작동할때도 뷰랜더링 한다음에 was로 돌아가는건가요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
3.x.x 버전 업데이트
섹션 1에 spring initializr를 진행하다가 java 17과 spring boot 3.4.1로 변경해 진행할 수 밖에 없다고 생각되어서 커뮤니티 질문들을 보았고 52강을 먼저 보게 되었습니다. java도 17로 업데이트하였고 17로 변경한 후에 gradle도 java 17에 맞게 7.3으로 변경하였는데 이런 오류가 뜹니다 ㅠㅠ 해결법 알려주시면 감사하겠습니다
-
미해결토비의 스프링 부트 - 이해와 원리
Arrays.copyOf 메서드의 타입 세이프
컬렉션을 어레이로 만들때 3가지 방법을 보여주셨는데, Arrays.copyOf 메서드가 유일하게 타입 세이프가 되지 않는 메서드고 나머지가 타입세이프 되는걸로 알고있어서요. 혹시나 다른 학습자분들 참고 하시길 바랍니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
src 파일에 test파일은 있는데, main파일이 없어요
src 파일에 test파일은 있는데, main파일이 없어요.. 어떻게 하면 될까요ㅠㅠ
-
미해결스프링 부트 - 핵심 원리와 활용
AppInitV3SpringMvc
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]AppInitV3SpringMvc 클래스 구현한 내용이 web.xml에서 DIspatcherServlet 설정하고 동일한거죠??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
프로젝트 실행 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]강의와 달리 디버깅이 되지 않습니다 무엇이 잘못된 점인지 설명해주셨으면 좋겠습니다
-
미해결스프링 핵심 원리 - 기본편
리퀘스트 스코프를 사용해도 오류가 안 납니다.
강의에서는 아직 리퀘스트 스코프가 만들어지지 않아서 오류가 나는 게 정상이라고 하셨는데, 저는 오류가 뜨지 않고 로그까지 정상적으로 출력이 됩니다. 스프링 부트 버전 3입니다.그리고 애노테이션은 @Scope("request")를 쓰면 log-demo URL로 접속해도 화이트라벨 에러 페이지가 뜨길래 스프링 문서에서 검색해서 나온 @RequestScope를 사용했습니다. 혹시 이것과 관련이 있을까요?
-
미해결스프링 핵심 원리 - 기본편
왜 조합이 아닌 상속을 사용하였을까요??
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요. 스프링 핵심원리에 부분을 재학습 중인 수강생입니다. 다름이 아니라 스프링 컨테이너인 AppllicationContext 는 다양한 인터페이스를 상속받아서 사용하는 것으로 알려주셔서 더 자세한 내용을 파악하고 싶어서 내용을 찾고 알려주신 코드를 고려하니, 문득 궁금한 점이 생겼습니다.스프링 프레임워크는 당연하게도 철저하게 객체지향적 설계를 위주로 만들어졌을 거라고 생각하는데, 스프링 컨테이너를 만듦에 있어서 다양한 인터페이스를 상속한 이유가 궁금해졌습니다. 관계적 측면에서 스프링 컨테이너와 다양한 인터페이스의 관계는 has-a 관계라고 생각하여 조합을 통한 스프링 컨테이너를 구성하는 것이 더 바람직하다고 생각이 들었는데, 다양한 인터페이스를 상속하여 컨테이너를 구성했음이 왜인지 궁금해졌습니다. 물론 본 강의의 내용과는 밀접한 관련이 없을 수도 있겠지만,, 개인적으로 모르는 부분일 수도 있겠다는 생각이 들었습니다.또한 지금은 개인적인 의문이지만, 분명 다른 분들도 궁금해하시는 분들도 있을 것이라고 생각됩니다. 명확하지 않아도 부디 고려해볼 수 있는 점이나 아시는 부분이 있으실까요??
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Mockito와 JDK가 충돌하는 문제 문의 드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]Mockito와 JDK가 충돌하는 문제 문의 드립니다.프로젝트 강의 내용과 일치하게 설정하였는데,@SpringBootTest 어노테이션을 사용하면 에러가 뜹니다. 데이터베이스에 Member테이블은 생성이 되는 것으로 보아 DB와 연결은 잘 되는 것 같습니다.여러 자료를 찾아보며 의존성을 추가해봐도 해결이 되지 않아 프로젝트 파일 첨부합니다.감사합니다,파일 링크: https://drive.google.com/file/d/1b_Liz-YjGAuRUzHM0Em5DnhHa0rtQ9Lm/view?usp=sharing
-
미해결스프링 핵심 원리 - 기본편
빈 생성 시점에 url
9:51에 빈이 생성되는 시점에 requestUrl을 알 수 없다고 하셨는데 그 이유가 궁금합니다.
-
해결됨스프링 시큐리티 완전 정복 [6.x 개정판]
FormAuthenticationFailureHandler -> setDefaultFailureUrl 의 Thread safety
안녕하세요 선생님, [커스텀 인증실패 핸들러 - AuthenticationFailureHandler (08:11) ] 강의를 듣다가 의문점이 생겨서 문의드립니다. 현재 AuthenticationFailureHandler 를 extend 해서 사용 중인데 FormAuthenticationFailureHandler.onAuthenticationFailure 메소드에서 아래처럼 defaultFailureUrl 을 변경하는 부분이 있습니다.@Component public class FormAuthenticationFailureHandler extends SimpleUrlAuthenticationFailureHandler { @Override public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, AuthenticationException exception) throws IOException, ServletException { String errorMessage = "Invalid Username or Password"; if (exception instanceof BadCredentialsException) { errorMessage = "Invalid Username or Password"; } else if (exception instanceof UsernameNotFoundException) { errorMessage = "User not exists"; } else if (exception instanceof CredentialsExpiredException) { errorMessage = "Expired password"; } else if (exception instanceof SecretException) { errorMessage = "Invalid Secret Key"; } // Thread Safe...? setDefaultFailureUrl("/login?error=true&exception=" + errorMessage); super.onAuthenticationFailure(request, response, exception); } }이 setDefaultFailureUrl 메소드를 호출해서 모든 쓰레드가 접근할 수 있는 defaultFailureUrl 필드를 변경하는 건 Thread Safe 하지 않지 않나요??
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
MemberRepository, ItemRepository
[질문 내용]ItemRepository에서 save() 메소드를 만들 때 아직 등록한게 없다면 id 값이 없으니 persist하고 id가 있다면 merge하는 조건문이 있습니다. 그렇다면 MemberRepository에서도 save()메소드에 아직 아무런 회원이 없다면 똑같이 ItemRepository의 save()메소드 처럼 조건문을 넣어야 하지 않을까요? 왜 MemberRepository의 save()메소드는 단지 em.persist(member)만 존재하는 건지 궁금합니다.
-
해결됨토비의 스프링 6 - 이해와 원리
Order에서 JPA 메타데이터 분리 - XML 사용
안녕하세요, 강의에서 올려주신 META-INF/orm.xml을 통해 orders의 table과 id가 만들어지는 것을 확인했습니다. 다만 Order의 no가 고유한 값을 가져야한다는 데이터 정합성 관련 SQL(schema.sql의 2,3번째 줄)이 Hibernate에서 표시되지 않는 것을 확인하여 unique="true"를 다음과 같이 넣어주면 원래의 JPA 어노테이션을 대체한 것으로 볼 수 있을지 문의드립니다. 감사합니다. <basic name="no"> <column name="no" length="255" unique="true"/> </basic>