묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
인텔리제이에서 메이븐 사용 방법
메이븐 명령어로 프로젝트 실행시 인식을 못하는데..메이븐 버전도 나오지 않구요인텔리제이 버튼실행말고.. 명령어로 실행할때.. 인텔리제이에 내장된것으로 사용방법없나요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
@GeneratedValue 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]이미 id가 자동 생성되도록 테이블을 정의한 시점에서 Member 클래스의 기본키 필드에 해당하는 id에도 @GeneratedValue(strategy = GenerationType.IDENTITY) 이와 같은 애노테이션을 붙여줘야 하는 이유가 뭔지 궁금합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
println 하였는데 주소가 출력됩니다.
8:34 초에 println으로 spring!이 출력 되었는데 저는 출력하면 저장된 주소(members = hello.hellospring.domain.Member@27e93bd6)가 출력 되는데 혹시 어떻게 해야 글자가 나오게 바꿀 수 있을 까요?
-
미해결백엔드 개발을 위한 필수 강의 - 스프링 부트3
<템플릿, 타임리프, 루트 URL, 서비스 URL, 프리픽스 등의 개념과 활용>이 동영상은 전편의 동영상이랑 내용이 같은거 같은데요??
이 동영상은 전편의 동영상이랑 내용이 같은거 같은데요??
-
미해결스프링 시큐리티 OAuth2
ProviderSetting Rename
ProviderSettings 가 2022.8.23 자로 AuthorizationServerSettings 로 이름 바꼈습니다.최신버전으로 강의 Follow 하시는 분들 참조 바랍니다.https://github.com/spring-projects/spring-authorization-server/issues/864
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
스프링부트에서 yml로 JPA 설정
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]스프링 부트를 사용한다면 yml로 환경설정하길 추천한다고 하셨는데요.yml에서 persistence unit name을 설정하려면 매우 복잡하기 때문에 스프링부트 도움 없이 em을 띄우려면 xml 파일을 쓰는 편이 좋다고 답변하신 걸 봤는데요. 그렇다면 yml로 설정 시 테스트 환경에서는 em을 어떻게 실행할 수 있나요?repository에서 정의한 api를 테스트 파일에서 사용하는 거라서 테스트 환경에서 em을 사용할 일이 없나? 싶다가도 그러면 em.flush() 이런 기능을 테스트 환경에서 쓸 수 없게 되잖아요? 애초에 테스트 환경에서 flush, clear는 쓰는 게 아닌건가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
@Around() 문법에 대한 질문입니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]@Around("execution(* hello.hellospring..*(..))") 문법의 의미를 "hello.hellospring 패키지 포함 그 하위에 있는 모든 패키지의 모든 메서드에 대하여 해당 Advice를 적용하라"는 뜻인 거 같은데요. 예를 들어, 만약 아래와 같은 조건이라면 해당 @Around 문법이 어떻게 수정되는 지 궁금합니다."hello / hellospring / service 패키지 하위에 있는 MemberService 클래스의 findMember() 메서드에 대하여 해당 Advice를 적용하라. findMember() 메서드의 return type은 List<Member>이다."
-
미해결생산성을 향상시키는 스프링부트 기반의 API 템플릿 프로젝트 구현
강사님 Swagger에 질문드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. springfox 버전의 스웨거는 2020년 이후로 업데이트가 종료된 후로 springdoc의 스웨거를 사용하는데 (업데이트 지속) 어떤걸 의존성 추가해야하는게 맞는것일지 고민이 됩니다.
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
4:40초에 하시는 말씀(findMember 호출한 곳)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]영한쌤께서 4분40초쯤에 하시는 말씀 중 findMember 호출한 데가 없다고 말씀하시는데, 그게 무슨 말인가요..? join은 예제에서 잘 호출됐는데... 하신 말씀이 잘 이해가 안 가서 질문드립니다!
-
미해결[초급] 찍어먹자! 코틀린과 Spring Security + JWT로 회원가입 만들기
Next Lv 강의에 대해서 계획중이신게 있을까요?
LDAP나 OAuth2는 다른거하고 연동하는거니까 패스하고.. Method Security(PreAuthorize, PostFilter, etc...)Role HierarchyLow Level Security(privileges) - Read, Write, Update, Delete등등 이런 고급 시큐리티쪽이요!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
result를 Optional<Member>로 선언하지 않는 이유
[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요. MemoryMemberRepositoryTest 파일에 대한 질문이 있습니다.public void findAll() {} 에서 보시면 result를 List<Member>로 선언해줬는데,public void findByName(){} 에서는 result를 Optional<Member>로 선언하지 않는 이유가 궁금합니다...MemoryMemberRepository 파일의 메소드와 동일하게 가려면 맞춰줘야 하는 줄 알았는데 Member result로만 선언이 되길래 여쭤봅니다!
-
미해결스프링 시큐리티 OAuth2
addFilterBefore 관련한 질문입니다!
안녕하세요.필터 삽입 위치 관련해 작년에 남겨주신 답변에서, 인증 필터 전후로 넣는 게 적절하다 판단되어 UsernamePasswordAuthenticationFilter 앞에 넣으셨다고 설명해주셨는데요.그럼 편의에 따라 인증 필터인 AnonymousAuthenticationFilter 뒤에 넣어서 CustomOAuth2AuthenticationFilter에서 authentication 객체의 null 처리를 하지 않는 방법은 괜찮을까요? 실제로 해보니까 NullException이 발생하지 않더라구요.추가적으로 다음 처리를 해줄 때, key("anonymous"), principal("anonymousUser")은 정해진 값을 넣어주신 걸까요? ROLE_ANONYMOUS는 정해진 권한인 것 같은데..if (null == authentication) { authentication = new AnonymousAuthenticationToken("anonymous", "anonymousUser", AuthorityUtils.createAuthorityList("ROLE_ANONYMOUS")); } 감사합니다.
-
해결됨스프링 시큐리티 OAuth2
authorization server 1.0.2 Oidc Configurer없음
현업 환경 상 1.0.2 버전에서 개발하고 있는데 OAuth2AuthorizationServerConfigurer 에 OIDC 관련 configurer 가 빠진 것으로 보입니다. 공식문서를 봐도 customizing 하는 부분은 있는데 default 설정은 어떻게 가져다 쓸 수 있는지 안내되어있는 곳을 못찾았는데요. get /userinfo 요청을 보내도 OidcUserInfoEndpointFilter 에 디버깅이 걸리지 않고 FilterChainProxy 에서도 Filter 리스트에서 빠져 있습니다. 어디를 찾아봐야할까요? private Map<Class<? extends AbstractOAuth2Configurer>, AbstractOAuth2Configurer> createConfigurers() { Map<Class<? extends AbstractOAuth2Configurer>, AbstractOAuth2Configurer> configurers = new LinkedHashMap<>(); configurers.put(OAuth2ClientAuthenticationConfigurer.class, new OAuth2ClientAuthenticationConfigurer(this::postProcess)); configurers.put(OAuth2AuthorizationServerMetadataEndpointConfigurer.class, new OAuth2AuthorizationServerMetadataEndpointConfigurer(this::postProcess)); configurers.put(OAuth2AuthorizationEndpointConfigurer.class, new OAuth2AuthorizationEndpointConfigurer(this::postProcess)); configurers.put(OAuth2TokenEndpointConfigurer.class, new OAuth2TokenEndpointConfigurer(this::postProcess)); configurers.put(OAuth2TokenIntrospectionEndpointConfigurer.class, new OAuth2TokenIntrospectionEndpointConfigurer(this::postProcess)); configurers.put(OAuth2TokenRevocationEndpointConfigurer.class, new OAuth2TokenRevocationEndpointConfigurer(this::postProcess)); return configurers; }
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
localhost:8080 실행 코드 process running
localhost:8080 실행하려고 하는데 실행코드를 보면 아래와 같이 process가 안 끝나고 process running for 10.302로 멈춰있는 상태에서 움직이질 않습니다. 그리고 localhost:8080을 실행해보면 초록색 로고가 안 뜨고 인터넷 표시만 뜹니다. 무엇이 문제일까요?
-
미해결실습으로 배우는 선착순 이벤트 시스템
부하테스트 비용이 궁금합니다
강의에서 부하테스트를 하셨을 때 비용이 어느 정도 나왔는지 궁금합니다.부하테스트 시 비용 절약하는 방법이 궁금합니다. elb, ec2, rds 등등 설정하고, ngrinder를 통해 부하테스트를 진행한 뒤에 결과 확인 후 바로 끄면 비용을 절약할 수 있을까요?
-
미해결스프링 시큐리티 OAuth2
Client Credentials 방식에서 로그아웃 처리
안녕하세요.Client Credentials 방식에서 사용자가 곧 클라이언트고 서버 간 통신에 사용되며 로그인 방식이 인가까지만 이뤄진다고 이해했습니다. 인증된 사용자가 아니기 때문에 /logout에 접근하지 못하는데요. 익명 유저로 처리되니까요.permitAll()에 /logout을 추가해서 로그아웃 과정을 살펴 보니까 session과 context도 정리가 다 되더라고요. 혹시session이나 context가 null 나오는 건가 싶었거든요. 그렇다면 Client Credentials 방식의 로그인의 경우 logout을 permitAll에 추가하여 로그아웃 로직이 실행될 수 있도록 해야 하는 것 같은데 맞을까요? 아님 굳이 안 거쳐도 되는 과정인가요?감사합니다.
-
미해결스프링 배치
chunk에서 exception 처리 로직..
skipListener를 등록하여 테스트 중입니다.writer 에서 exception이 발생했는데 바로 skipListener로 넘어가지 않고 동일한 item에 대해 processor, writer를 한번 더 실행하고 skipListener로 넘어가는 현상을 발견했습니다.찾아보니 spring batch의 기본 동작 로직인 걸로 나오네요.보다 안정적인 수행을 위해 있는 기능 같은데 이렇게 재실행하지 않고 오류가 발생하면 바로(!!!) skipListener로 넘어가도록 할 수 있는 방법이 있을까요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
@ManyToOne 매핑 질문입니다.
게시글과 댓글을 매핑 하려고 하는데 게시글에 어떤 댓글이 달렸는지 조회 하기 위해 게시글 -> 댓글 OneToMany 단방향 매핑을 하려고 했더니, @OneToMany는 지양하라고 해서 댓글에 @ManyToOne 매핑을 하려고 했는데요. 이러면 댓글->게시글 단방향이 되는 것 아닌가요? 게시글에 어떤 댓글이 있는지 확인을 하고 싶을 뿐인데 ManyToOne을 지양하는 이럴 땐 어떻게 해야하는지 궁금합니다 .. 매핑이 아니라 차라리 int communitySeq 를 멤버 변수로 갖도록 하고 jpql에서 join문을 통해 데이터를 가져오는 것이 맞을까요??
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberController 질문있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]3분40초부터 말씀하시기를, 컨트롤러는 어쩔 수 없다고 하시면서 MemberService나 MemberRepository 같이 SpringConfig에 따로 빼주지를 않는데, 그냥 MemberController에서 @Controller와 @Autowired를 뺀 뒤, 아래와 같이 설정해주지 않는 이유가 궁금합니다. 이렇게 설정하면 어떤 점에서 문제가 발생하나요??public MemberController memberController() { return new MemberController(memberService());}
-
미해결스프링 배치
AsyncItemProcessor 트랜잭션 단위
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 선생님 안녕하세요!질문이 있습니다. 코드를 봐보니 AsyncItemProcessor를 사용할 때도 트랜잭션은 개별 아이템 단위가 아니라 Chunk 단위인 것 같은데 맞을까요?