묻고 답해요
167만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실습으로 배우는 선착순 이벤트 시스템
이벤트 처리를 위한 여러가지 방식
안녕하세요 강사님! 강의 너무 잘 들었습니다. 강의를 다 듣고 몇가지 질문이 있어 이렇게 질문 드립니다.카프카에 대해서 명확히 이해하지 못해서 그러는데 Consumer에서도 결국 토픽에서 가져와서 MySQL DB에 저장을 하는 방식인데, MySQL의 처리속도가 1분에 100개라고 한다면 100분이 걸리는 것은 동일한거 아닌가? 하는 궁금증이 들었습니다! 카프카를 사용하는 이유는 단순히 수많은 요청이 왔을 때 처리량을 조절해 DB가 다운되지 않도록 함인가요?유명 연예인의 티켓팅 서비스 같은 경우처럼 좌석번호마다 다른 티켓으로 보는 경우는 어떤 방식을 사용하는게 맞는것인지 문득 궁금해졌습니다! 이전 동시성 강의처럼 Lock을 거는 방식을 사용하는 방식이 옳을지 아니면 이번 강의에서 Redis의 Set을 사용하여 좌석번호마다 좌석이 찼는지를 구별하는것이 옳을지, 아니면 또 다른 방법을 사용하는지 궁금합니다!마지막에서 쿠폰을 발급하다가 에러가 발생하면 여러가지 방식이 있다고 하셨는데 또 어떤 방식이 있는지, 또한 그 방식이 현재 강사님께서 설명해주신 FailedEvent와 무슨 장단점 차이가 있는지가 궁금합니다!
-
해결됨Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
새로운 마이크로서비스가 추가된 경우 클라이언트 배포 여부
1분경, 새로운 마이크로서비스가 배포된 경우에도 API 게이트웨이를 두면 클라이언트는 API게이트웨이만 상대하면 된다고 하셨는데,새로운 마이크로서비스가 생기면 클라이언트는 배포를 하지 않아도 된다는 뜻으로 이해를 했는데,새로운 마이크로서비스와 연결하기 위해서는 클라이언트에도 연결을 위한 코드가 추가될텐데 클라이언트도 배포를 해야 하는 것은 아닌지 문의 드립니다 !감사합니다.
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
13강 과정에 질문있습니다.
13강 과정에 질문있습니다.강의 마지막에 도서관리 애플리케이션에서데이터 입력 하는 단계에서 에러가 나오고 있습니다.화면에선 서버 내부 에러 라고 나오고,로그창에서는 "INSERT INTO [*]USER(name, age) VALUES(?, ?)"; expected "identifier"; SQL statement:INSERT INTO USER(name, age) VALUES(?, ?) [42001-214]] with root causeorg.h2.jdbc.JdbcSQLSyntaxErrorException: SQLステートメントに文法エラーがあります "INSERT INTO [*]USER(name, age) VALUES(?, ?)"; 期待されるステートメント "identifier": SQL Statement에 문법 에러가 있습니다. "INSERT INTO [*]USER(name, age) VALUES(?, ?)"에 "identifier"가 요구됩니다. Syntax error in SQL statement "INSERT INTO [*]USER(name, age) VALUES(?, ?)"; expected "identifier"; SQL statement:INSERT INTO USER(name, age) VALUES(?, ?) [42001-214]
-
미해결스프링 시큐리티
강의 ppt 그림 질문입니다.
강의안 ppt를 보면서 진행중인데그림이 상이해서 헷갈려 질문드립니다.67번 슬라이드에서 인증 결과를 저정하는 그림에서는ThreadLocal > SecurityContextHolder > SecurityContext 처럼 표기되어있는데74번 슬라이드에서는SecurityContextHolder > ThreadLocal > SecurityContext 처럼 표기되어있어서 혼란이오는데 어느 슬라이드의 그림이 맞는건가요?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트 실행 오류
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 강의 수강 중 선생님과 다르게 오류가 발생해 질문 드립니다. 개별로 실행하면 다 잘 돌아가는데 전체 테스트를 실행하면 findByName()에서 오류가 발생합니다. 왼쪽 하단에 테스트가 전체 다 뜨지 않고 findByName만 뜨고요.전체 코드 사진입니다.클래스에서 테스트 실행 시 오류 구문 사진입니다.마지막 findAll()에서 member1, member2에 다른 값을 지정하면 전체 테스트가 잘 돌아갑니다. 다른 값을 참조해서 오류가 나는 것 같은데.. clearStore()가 안먹히는 것 같은데 제가 이해한게 맞나요? clearStore() 작성을 잘못된 위치에서 한걸까요 ..? 이해가 안 가 질문 드립니다..
-
해결됨스프링 시큐리티
Ajax Custom DSLs - customConfigurerAjax(HttpSecurity http) 에서 loginProcessingUrl(/api/login) 처리할 때 null
customConfigurerAjax(HttpSecurity http) 에서 loginProcessingUrl("/api/login") 처리할 때private void customConfigurerAjax(HttpSecurity http) throws Exception { http .apply(new AjaxLoginConfigurer<>()) .successHandlerAjax(ajaxAuthenticationSuccessHandler()) .failureHandlerAjax(ajaxAuthenticationFailureHandler()) .setAuthenticationManager(authenticationManager(authenticationConfiguration)) .loginProcessingUrl("/api/login") ; }AbstractAuthenticationFilerConfigurer 클래스의 loginProcessingUrl을 호출하던데 여기서 authFilter 가 null 이어서 예외가 발생하는데public T loginProcessingUrl(String loginProcessingUrl) { this.loginProcessingUrl = loginProcessingUrl; this.authFilter.setRequiresAuthenticationRequestMatcher(createLoginProcessingUrlMatcher(loginProcessingUrl)); return getSelf(); }어떻게 해결해야할지 모르겠습니다. ㅠㅠhttps://github.com/pdh9311/core-spring-security추가로 ajax security 시작한 이후로 localhost:8080 으로 접속하니까 화면이 안나오고 401 에러가 발생하는데 어디가 문제인지 모르겠습니다. ㅠㅠ
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링에서 다운 받은 hellospringApplication.java가 실행이 안됩니다.
ㅇ질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요?예[질문 내용] 저 파일이 실행이 안되네요... 어떻게 하면 되는걸까요??
-
미해결스프링 부트 - 핵심 원리와 활용
LifecycleException
안녕하세요..섹션2 > 톰캣 설정 - 인텔리J 무료 버전 듣는중인데 tomcat runner를 설정한후 Run을 실행하면 에러가 납니다.강의내용을 따라하면 윈도우 사용자라서 '/'관련 에러가 나는데 '\' 로 바꾸니까 에러가 안납니다.그리고, 이런 에러가 나는데요. 다른 질문들을 찾아봐도 모르겠네요...SEVERE: 자식 컨테이너를 시작 중 실패했습니다.java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 구성요소 [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/\]]을(를) 시작하지 못했습니다.사용환경 : 윈도우 / IntelliJ IDEA 2022.3.3 (Community Edition)
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
cannot resolve 'data'
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) Y2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) Y3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) Y[질문 내용]${data} 에서 cannot resolve 'data' 에러 발생.helloController의 attributename(data) 을 읽지 못하는 상황인것으로 추측됩니다.오타 / 임포트 문제는 아닌것으로 보이는데,이유가 무엇인가요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
강의 완강 기준
강의 들으며 따라가는데엔 문제없는데 강의없이 혼자 복습하려니 막막하고 기억이 안나면 강의를 다시 듣고 거의 외워서? 할 수 있을만큼 완벽히 이해하는게 좋을까요? 아니면 강의 들으며 무리없이 따라갈 수 있고 내용을 이해했다면 다시 복습할 필요는 없을까요..?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Cannot snapshot 오류가 뜹니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 코드를 모두 정상적으로 작성하였는데Cannot snapshot C:\Users\이름\OneDrive\바탕 화면\App\Programming\study\inflearn\Spring\forBeginner\hello-spring\build\test-results\test\binary\output.bin: not a regular file이런 오류가 뜹니다.
-
미해결스프링부트 JUnit 테스트 - 시큐리티를 활용한 Bank 애플리케이션
완강 하였습니다. CI CD는
https://github.com/codingspecialist/JUNIT5-Security-Lecture 여기 나와있는 deploy.yml은 그대로 써도 되는걸까요?
-
해결됨스프링 시큐리티 OAuth2
AuthorizationServer 와 Resource Server 용어 질문이있습니다.
우선 Spring Security 1편부터 양질의 강의 너무 잘듣고있다는 말씀드리고 싶습니다.다름이 아니라 강사님이 강의 13분 10초에 "발급받은 AccessToken 을 가지고 AuthorizationServer 에 사용자정보를 요청한다" 고 말씀하셨는데. 이 AuthorizationServer 가 Resource Server 라고 이해하면 될까요?Authorization Code Grant 방식의 Flow 는 아래와 같은 것으로 알고 있습니다.Authorization Server 에 임시코드(Code) 을 발급받고발급받은 Code 를 Authorization Server 에 요청하여 AccessToken 과 교환한다.발급받은 AccessToken 을 가지고 Resource Server 에 사용자 정보를 요청한다.제가 잘못알고있는것일까요..? 답변해주시면 감사하겠습니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
이클립스로 강의
인텔리제 대신 이클립스로 강의 수강해도 문제 없을까요?
-
미해결스프링 시큐리티
세션 삭제
안녕하세요 시큐리티 이번에 처음 공부하게 되었는데 강의가 너무 좋네요 질문은임의로 세션을 삭제하면 다시 인증을 받아야 하는데SecurityContext에는 인증 정보가 들어있지 않나요 ?
-
미해결실전! 스프링 데이터 JPA
@CreatedDate에 관하여
@CreatedDate가 persist 전에 호출된다는 말씀이 -> persist 전에 호출되기 때문에 createdDate의 값을 가져오기 위해 별도의 쿼리를 날리지 않는다는 말인가요??또 CreateDate를 사용하는 이유가 persist 전에 호출되고 persist 이후에 JPA가 createdDate에 값을 넣어주기 때문에 사용한다고 생각하는게 맞을까요??
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
대출 반납 오류
https://github.com/strongmhk/Springboot/blob/main/library-app/src/main/java/com/group/libraryapp/domain/user/User.java 처음에 B라는 유저가 클린코드를 대출했다가 반납했는데, 잘되었습니다.근데 다시 대출을 하고 반납을 누르면 반납이 완료됐다고 뜨는데,B라는 유저로 다시 대출을 하려니까 오류가 뜨네요.그래서 DB를 확인해보니 DB에는 B라는 유저가 처음 대출을 하고 반납을 한 후, 2번째로 대출 후 반납을 했을 때 is_return 필드가 갱신되지가 않습니다.제 생각엔 User 클래스 안의 returnBook 메서드에서 .findFirst() 메서드 때문인 것 같기도한데 findLast라는 메서드는 없네요. 해결책이 있을까요?
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
ORM 책 말인데요..
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]ORM 서적 혹시 개정판 안 나오나요...버전이 꽤나 바뀐 탓에 사고 싶은데 약간 망설여지네요.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
OrderItem - Item 관계에 대해 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]OrderItem과 Item는 N:1 관계라고 나오는데요, 하나의 주문에는 여러 상품이 들어가는 건 이해하겠는데 "하나의 상품(하나의 id를 가진)"이 여러 주문에 들어 가는 게 이해가 잘 안 됩니다. 가령 내가 쿠팡에서 내 장바구니에 비누, 치약, 샴푸 3가지 상품을 샀는데 이 각각의 상품들은 id를 가지고 있을 것이고 여기서 결제하고 주문을 완료하면 이 3가지 상품들은 해당 주문 목록에만 표시 될텐데요? 이 중 어느 하나의 상품이라도 다른 OrderItem에 포함 된다는 의미가 뭔지 이해가 안 가네요.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
타임리프에서 삼항연산자
<td th:text="${order.orderItem} ==null ? '': ${order.orderItem.get(0).item.itemName}"></td> 혹시 이런식으로 order라는 객체 안에 ordrItem 이 널이 아니면 그중 첫번째 아이의 item.itemName을 표시하려고 하는데요. 계속 에러가 나네요 ㅡ2023-07-26T04:07:54.378+09:00 ERROR 31024 --- [nio-8080-exec-6] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.thymeleaf.exceptions.TemplateProcessingException: Exception evaluating SpringEL expression: "order.orderItem.get(0).item.itemName" (template: "/order/list" - line 25, col 25)] with root causeorder.orderItem[0].item.itemName이렇게 해도 비슷한 에러가 나는데 혹시 해결방법있을까요?