안녕하세요. 현재 지금 스프링 부트 2.6.14로 작성중에 궁금한 점이 있습니다. @Secured와 같은 메서드 방식에서 RoleHierarchy가 그대로 적용 되는지 궁금해서 질문드립니다. 혼자서 테스트 할때 ROLE_ADMIN > ROLE_MANAGER > ROLE_USER 구조로 RoleHierarchy를 구성하고 ROLE_ADMIN 권한을 지닌 아이디로 @Secured("ROLE_USER") 메서드를 호출하는데 인가가 안되는데 원래 안되는 것인지 아니면 되는 방향이 있는지 궁금하여 질문드리겠습니다. 감사합니다.
강사님은 member 테이블 필드값에 order 리스트를 없애서 단방향 연관관계를 보통 한다고 하시는데(6:22초) 어떤 상황에서 그렇게 되나요 ??? ADMIN쪽 개발 관련된 부분인가요 ?? 예를 들면 배송사이트에서 나의 주문정보 보기 와 같은 페이지는 오히려 member 테이블 필드값에 order 리스트가 필요하지 않나요 ??
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 여기에 질문 내용을 남겨주세요. application.yml jpa: hibernate: ddl-auto: create 이라 되어 있는데, 기존의 테이블이 드랍되지 않습니다. 질문 게시판을 검색해보니, H2의 버전이 1.4.200인 경우에는 하이버네이트 버전을 5.4.13.Final 로 바꿔야 한다고 되어 있네요. 그래서, build.gradle 에 ext["hibernate.version"] = " 5.4.13.Final " 를 추가 해놓고 다시 돌려보니 이제는 엄청난 에러메시지가 나오네용.. 하이버네이트 버전을 바꾸는 방법이 올바르지 않았나요?
강의 영상에서 보면 test 실행 시 콘솔창에 'Hibernate: insert into member(id, name) values(null, ?)'라는 SQL문이 뜨는데요. 실제로 db에 요청되는 쿼리라면 insert into member(id, name) values(null, spring) insert into member(id, name) values(null, spring100) 이런식으로 떠야할 것 같은데, ? 라고 뜨는 이유가 있을까요?
서블릿 컨테이너는 스프링에 종속되지 않게 만들어졌다고 이해했는데요. 어느정도 이러한 규제를 완화해주기 위해서 다른 프레임워크가 이용할 수 있는 필터 표준을 만들어줬고 이를 스프링 시큐리티가 구현한게 DelegatingFilterProxy 가 맞을까요? 그러면 DelegatingFilterProxy 가 어떻게 Servlet Fitler 로 주입될 수 있을까요?
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 실행 시, 콘솔 창과 같은 에러 때문에 실행이 안 됩니다. JDK 19.0.1 버전을 사용하는데, 버전에 문제가 있는 것일까요? 아니면 다른 해결 방법이 있는 걸까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오)예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 쿼리 dsl에서 많이 설명 해주셨는데요 그렇다면 dsl을 쓰는 현업에서는 jpql을 사용할 일이 전혀 없을까요 ? 전혀 없다고 해도 근본이 되는 jpql을 알아둬야 하겠지만 학습시간에 대한 비중을 어디에 크게 둬야 할지 의문입니다 .
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] assertThat메서드가 두 값을 비교할 때 사용된다는 건 알겠는데 구글링 해보니 assertThat(actual, isEqualTo(expected)) 이런식으로 actual와 expected이 들어갈 위치라고 나와있고 강의에선 반대 느낌으로 설명하는거 같아서요 강의코드로 혹시 어떤 게 actual값이고 expected값인지 이해하면 될까요?
안녕하세요 영한님 강의 잘 듣고 있습니다^^ 전부터 궁금해 왔던 것인데요, 팩토리를 만들 때 정적으로 올리는 이유에 대해서 궁금합니다 영한님이 다른 QnA에서 추천해 주신 내용들을 읽어보았으나 굳이 왜 "정적"영역으로 보내는 가에 대한 의문은 쉽게 풀리지 않습니다 ㅜㅜ 일단 정적 팩토리 메서드로 보내면 생성자들에 대한 응집도가 크게 떨어지는 느낌입니다. "엘레강트 오브젝트"라는 책을 보면 생성자는 10~15개 까지도 만들고 퍼블릭 메서드를 최대한 적게 가져가라고 가이드를 주는데요, 정적 영역으로 보내면 주/부 생성자로 보낼 수 없기 때문에 그 많은 생성자들이 다 흩어지고, 생성자들 간 관계를 맺을 수 없기 때문에 유연성이 떨어지고 코드 중복이 자주 일어나는 효과가 나는 것 같습니다 이는 굳이 정적 영역으로 보내지 않고 주/부 생성자로 구분하면 쉽게 해결될 일이 아닌가? 하는 생각도 들어 질문을 드립니다
자바 코드로 직접 스프링 빈 등록하기에서 SpringConfig 파일에 코드를 작성하시는 부분을 보다가 궁금한게 생겨서 질문합니다. 스프링 컨테이너에 빈을 등록한다는 것은 등록하고자하는 클래스의 실제 객체, 즉 인스턴스를 하나 생성하여 관리한다는 것으로 이해했는데요. 그럼 @Bean annotation을 붙이는 것은 빈으로 등록하겠다는 것을 명시하는 것을 나타내는 것 같은데, 꼭 메서드 형식으로 작성을 해야하는 것인가요? 예를 들어, 강의에 적혀있던 메서드 대신 @Bean public MemberService memberService = new MemberService(); 위와 같이 변수 형태로 선언하면 안되는 것인가요?
[DB - Cursor & Paging 이해] 강의에서 보여주신 장표를 보면 cursot가 먼저 움직이고 fetch를 통해 application으로 매핑된 데이터(객체)를 넘겨주는 것처럼 표현되어있는데요. fetch size에 의해서 DB --> 메모리로 데이터가 적재된 후, 그 결과집합을 순차적으로 cursor를 통해 접근하는걸로 알고있습니다. 즉, fetch size는 DB에서 메모리로 데이터를 적재할 크기이고 그 데이터 셋을 처음부터 cursor를 통해 접근하는게 맞지않나 싶어서 질문드립니다. 제가 반대로 알고 있을 수 있지만...
안녕하세요. 수업 흥미롭게 듣고 있는 수강생 입니다. 블로그에 공부한 내용을 정리해두는걸 좋아합니다. ( 예시 ) 토비님의 강의도 아래처럼 강의를 정리하면서 듣고 있는데 혹시 블로그(광고 안붙인 블로그입니다.)에 아래와 같이 메모한 강의 내용을 올려도 괜찮을지 문의드립니다. 주로 강의 따라서 작성한 코드 스샷 및 말하신 내용 중 기억할만한 부분들이나 전체적인 흐름을 적었습니다. (나중에 제가 보고 기억날 수 있게요) 가능하시다면 혹시 일부 강의 스샷도 올려도 되는지 궁금합니다 (특히 현재까지의 코드 구조 중간중간 설명해주신 부분이나 초반에 Containerless 설명해주신 부분이요! 물론 몇장만요.)
@Component를 사용하기 위해서는 @ComponentScan을 사용하는데 더 나아가 @component가 메타 어노테이션으로 쓰이는 @Service나 @Controller 같은 경우는 @ComponentScan없이 동작이 되는데요. 내부적으로는 @Component 어노테이션을 사용해 @ComponentScan이 필요하지 않을까 했는데 없어도 동작이 되는것 같은데요. 이는 동작이 다른건가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] ArrayList는 기본 사이즈를 10으로 생성하고 이후 사이즈를 초과할 경우 2배로 늘린 후 기존의 값을 복사하는 것으로 알고 있습니다. 만약 사용자의 orders 개수가 10개 이상이라면, 이것을 지속적으로 늘리는 연산이 필요할 것으로 생각됩니다. 실무에서는 arraylist를 필드 초기화할 때, 이런한 것을 예상해서 넉넉한 사이즈로 초기화를 하는지, linkedlist로 초기화하여 불필요한 연산을 줄이는 지 궁금합니다.