묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
jpa활용1 상품주문
안녕하세요. 상품 주문의 값들을 다 체크하고 제출시 해당에러가 발생합니다.list의 경로를 확인해봐도 정상 이었고, order관련 클래스에 문제가있나 확인해 보았지만 문제가 없지만 에러가 발생하여 이렇게 질문합니다.findAllByString findAllByString혹시 몰라 https://drive.google.com/file/d/1sLGd3uAEdfip5VI7JUKJuIGn2IbpA_BK/view?usp=sharing구글드라이브 업로드하여 올립니다.[THYMELEAF][http-nio-8080-exec-6] Exception processing template "order/orderList": An error happened during template parsing (template: "class path resource [templates/order/orderList.html]")Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.thymeleaf.exceptions.TemplateInputException: An error happened during template parsing (template: "class path resource [templates/order/orderList.html]")] with root cause
-
해결됨Flutter 중급 1편 - 클린 아키텍처
Provider
강의에서 이야기해주신 것 처럼 여러개의 Provider를 사용하기위해 MultiProvider를 사용하게되는데요. 이럴 때 일부 Provider가 일부 자식위젯에서만 사용될 경우해당 자식 위젯에서만 선언하는 것과 최상위에 MultiProvider내에 전부 선언해서 사용하는 것 중 어떤 것을 선호하시나요?그리고 왜 그런지 알 수 있을까요?
-
해결됨[C#/.NET 8.0]어서와, Blazor Server는 처음이지?
Grid 컴포넌트 사용에 대해서 질문있습니다.
asp.net 의 WebForm 에서도 DataGrid, DataList, Repeator 등이 있었습니다. DataGrid, DataList 는 기능이 많아 보이지만, 기능이 많은 것만큼 렌더링 된 데이터의 사이즈가 너무 커져서 실무에서는 속도 문제로 결국 html 태그를 적극 활용하면서 Repeator를 사용했었습니다.혹시 QuickGrid , RadzenGrid 등도 그런 문제가 발생하는 것은 아닐까 해서요...샘플로 작성되는 weather 페이지처럼 html 태그가 결국 사용되는게 아닐까 싶은데요...결국은 모든 데이터를 다 조회해서 갖고 있는게 아니라, 해당 페이지에 대한 데이터만 갖고, 페이징 네비게이션 부분은 별도로 코딩하게 된다면...그리드의 정렬, 필터 기능은 사용 못하는게 아닐까 싶습니다.혹시 속도 비교를 해 놓은 것이 있는지 궁금합니다.제가 아직 WASM 방식과 서버 방식을 잘 이해를 못하고 있는데요,제가 기존에 했었던 방식(asp.net webform, mvc)은 서버 방식이었을 것으로 이해하고 있습니다.WASM 방식이 된다면 Grid 사용이 달라지는 건가요???
-
미해결이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
10번 강의 질문 있습니다
안녕하십니까. 질문 남기기 앞서 강의 정말 잘 보고 있다고 말씀 드리고 싶습니다. 제가 궁금한 부분은 10번 강의에서 공격에 맞았을 때 검증(Validation) 하는 부분입니다. bool AABCharacterPlayer::ServerRPCNotifyHit_Validate(const FHitResult& HitResult, float HitCheckTime) { return (HitCheckTime - LastAttackStartTime) > AcceptMinCheckTime; } 공격 시작 타이밍과 몽타주에 배치한 트리거 함수 간의 간격을 검증하기 위한 것으로 이해했습니다. 검증 코드에서 LastAttackStartTime이란 변수가 쓰였고, LastAttackStartTime이란 변수가 아래 코드의 ServerRPCAttack에서 인자로 받은 AttackStartTime 변수로 세팅되는 것을 확인했습니다. void AABCharacterPlayer::ServerRPCAttack_Implementation(float AttackStartTime) { AB_LOG(LogABNetwork, Log, TEXT("%s"), TEXT("Begin")); bCanAttack = false; OnRep_CanAttack(); AttackTimeDifference = GetWorld()->GetTimeSeconds() - AttackStartTime; AB_LOG(LogABNetwork, Log, TEXT("LagTime : %f"), AttackTimeDifference); AttackTimeDifference = FMath::Clamp(AttackTimeDifference, 0.0f, AttackTime - 0.01f); FTimerHandle Handle; GetWorld()->GetTimerManager().SetTimer(Handle, FTimerDelegate::CreateLambda([&] { bCanAttack = true; OnRep_CanAttack(); } ), AttackTime - AttackTimeDifference, false, -1.0f); LastAttackStartTime = AttackStartTime; PlayAttackAnimation(); //MulticastRPCAttack(); for (APlayerController* PlayerController : TActorRange<APlayerController>(GetWorld())) { if (PlayerController && GetController() != PlayerController) { if(!PlayerController->IsLocalController()) { AABCharacterPlayer* OtherPlayer = Cast<AABCharacterPlayer>(PlayerController->GetPawn()); if (OtherPlayer) { OtherPlayer->ClientRPCPlayAnimation(this); } } } } } LastAttackStartTime은 서버의 변수이고 그렇기 때문에 여러 클라이언트가 동시에 공격을 한다면 LastAttackStartTime이 덮어 씌워질 수 있다고 생각하는데 그렇게 되면 검증하는 부분에서 문제가 생길 수도 있다고 생각합니다. 질문 : 여러 클라이언트가 동시에 공격 시 LastAttackStartTime이 덮어 씌워지는 것이 맞는가?
-
미해결처음 만난 리액트(React)
Chapter_10 수업에서 했던 예시를 스스로 구현하고 싶은데 방법을 모르겠어요
const numbers = [1, 2, 3, 4, 5]; const listItems = numbers.map((a) => <li>{a}</li>); ReactDOM.render(<ul>{listItems}</ul>, document.getElementById('root'));이 예시를 강사님처럼 리액트로 만들고 싶은데 이때 index.js를 어떻게 해야하나요?#수업질문
-
미해결
이전 로그인 시간 팝업
안녕하세요 영한님 수업을 듣다가 관리자 페이지를 만들어보면서 듣고 있는데요제가 이것저것 찾아보면서 다른 기능들을 넣으면서 공부를 하고 있습니다.하지만 의문점이 하나가 생겼습니다. 로그인, 로그아웃까지 구현을 했으나,이전에 로그인한 시간 팝업에 띄우고 싶은데 Session으로 하면 정해진 시간까지 Session이 동작하여서 이것을 쓰면 안 될 것 같은데요 어떤 기능을 공부해서 사용해야 하나요?
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
비연결성에 대해서
tcp/ip는 요청을하고 요청이끝나면 연결을 끊어버린다고 하셨는데요 이것의 정확한 뜻이 url요청을하고 응답을하면 연결을 끊어버린다고 이해하면 정확할까요?
-
해결됨
안드로이드 스튜디오에서 새 프로젝트를 만들 때마다 에러가 떠요
An issue was found when checking AAR metadata: 1. Dependency 'androidx.activity:activity:1.8.0' requires libraries and applications that depend on it to compile against version 34 or later of the Android APIs. :c11 is currently compiled against android-33. Also, the maximum recommended compile SDK version for Android Gradle plugin 7.2.2 is 33. Recommended action: Update this project's version of the Android Gradle plugin to one that supports 34, then update this project to use compileSdkVerion of at least 34. Note that updating a library or application's compileSdkVersion (which allows newer APIs to be used) can be done separately from updating targetSdkVersion (which opts the app in to new runtime behavior) and minSdkVersion (which determines which devices the app can be installed on).처음에는 에러가 15개 떴는데 지금은 build.geadle 에서 compileSdk 32 에서 compileSdk 33 으로 바꾸니 이렇게 에러가 나오네요 혹시 해결 할 수 있으신 분 있나요?
-
미해결이펙티브 자바 완벽 공략 1부
[과제] EnumMap과 EnumSet가 HashMap과 HashSet보다 효율적인 이유
EnumMap 특징 - 열거형 크기만큼 배열이 생겨나며, ordinal에 따라 index가 정해진다. - 배열을 사용하기 때문에 연산속도가 빠르다. - 열거형 순서에 따라 데이터가 정렬된다. - 키의 순서대로 순회할 때 효율적이다. EnumSet 특징 - 비트 벡터를 통해 공간과 성능을 최적화한다. - 다양한 집합 연산(교집합, 차집합, 합집합 등)을 제공한다.* 비트 벡터란 비트 배열로 구성된 자료구조, 0이면 집합에 미포함, 1이면 집합에 포함을 의미한다
-
미해결Java/Spring 테스트를 추가하고 싶은 개발자들의 오답노트
패키지 의존성을 확인해보는법?
해당 챕터를 들고 궁금한 점이 있어 문의를 남깁니다. 7분를 들어보면 패키지 의존성을 확인해보라는 말이 나오는데 그런 의존성을 파악하는 툴 같은게 있는건가요?
-
해결됨코딩테스트 [ ALL IN ONE ]
postorder 문제 문의드립니다!
안녕하세요!현재 postorder 트리 문제 풀었는데요!선생님이 공유해주신 코드가class Solution(object): def lowestCommonAncestor(self, root, p, q): if root == None: return None left = self.lowestCommonAncestor(root.left, p, q) right = self.lowestCommonAncestor(root.right, p, q) if root == p or root == q: return root elif left and right: return root return left or right이렇게 인데 class에 대해서 잘 몰라서 그런지 이후로 어떻게 해야 답이 나오는지 모르겠습니다ㅜㅜresult = Solution([3, 5, 1, 6, 2, 0, 8, None, None, 7, 4], 6, 4)이렇게 했는데 에러가 나는데 어떻게 해야할까요?++ 선생님 파이썬 전자책으로 공부하고 했는데, 제가 잘 못찾아서 그런지 그때 클래스에 대해서 보지 못한것 같은데 설명해주셨으면 좋겠어요🙏🙏
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
스프링 프레임워크 동작 구조 정리
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요 !![1] 요청 시에 @RequestBody와 HttpEntity를 안 쓰는 경우 , 응답 시에 @ResponseBody와 HttpEntity를 안 쓰는 경우[2] 요청 시에 @RequestBody와 HttpEntity를 쓰는 경우 , 응답 시에 @ResponseBody와 HttpEntity를 쓰는 경우이 두 가지 케이스로 나누어 스프링 프레임워크의 동작 구조를 정리해보았는데 제가 이해하는 게 맞는지 너무 길지만 한번만 피드백해주시면 감사하겠습니다 !![1]요청 : 파라메터 타입에 @RequestBody X 이거나 HttpEntity X의 경우응답 : 반환 값에 @ResponseBody X 이거나 HttpEntity X의 경우 1. 클라이언트의 요청 2. DispatcherServlet를 호출(urlPatterns = /* 경로이기 때문) 3. HandlerMapping의 가장 우선순위에 있는 구현체인 RequestMappingHandlerMapping을 통해 @Controller이 붙은 클래스의 객체를 매핑 정보로 활용 4. doDispatch()의 getHandler()에서 해당 매핑 정보의 컨트롤러 객체 반환 5. doDispatch()의 getHandlerAdapter()을 통해 HandlerAdapter을 호출 후 컨트롤러를 처리할 수 있는 어댑터 있는지 검증(supports()) 후 어댑터 호출(handle()) 6. 이때 컨트롤러는 @Controller의 @RequestMapping이 붙어있으므로 HandlerAdapter의 가장 우선순위의 RequestMappingHandlerAdapter 어댑터 구현체가 호출되는 것! 7. 어댑터는 컨트롤러의 파라메터에 해당되는 객체가 ArgumentResolver의 구현체로 존재하는지 검증(supportsParameter()) 후 존재하면 생성(resolveArgument()) 8. 어댑터는 생성된 객체를 컨트롤러의 파라메터에 주입하면서 컨트롤러 호출 9. 컨트롤러는 로직 수행 후 return 값(객체)을 어댑터에 반환 10. 어댑터는 ResultValueHandler 호출하면서 반환값에 해당되는 객체가 존재하는지 검증(supportsReturnType()) 후 존재하면 생성(handleReturnValue()) 11. 어댑터는 생성된 객체 및 논리적 뷰 이름으로 초기화된 ModelAndView 객체 생성 후 DispatchServlet에 반환 12. DispatchServlet에서 ViewResolver에 논리적 뷰 이름을 넘겨주면서 호출 13. ViewResolver에선 논리적 뷰 이름을 물리적 뷰 경로로 바꿔주고 그 값으로 초기화된 View 객체 반환 14. DispatchServlet에서 View객체 이용해서 render() 호출 15. JSP 뷰 템플릿이었으면 render()에서 JSP 코드로 포워드 후 랜더링하고 나머지 타임리프 같은 뷰 템플릿이면 render() 받자마자 바로 화면 랜더링 [2]요청 : 파라메터 타입에 @RequestBody O 이거나 HttpEntity O의 경우응답 : 반환 값에 @ResponseBody O 이거나 HttpEntity O의 경우 1. 클라이언트의 요청 2. DispatcherServlet를 호출(urlPatterns = /* 경로이기 때문) 3. HandlerMapping의 가장 우선순위에 있는 구현체인 RequestMappingHandlerMapping을 통해 @Controller이 붙은 클래스의 객체를 매핑 정보로 활용 4. doDispatch()의 getHandler()에서 해당 매핑 정보의 컨트롤러 객체 반환 5. doDispatch()의 getHandlerAdapter()을 통해 HandlerAdapter을 호출 후 컨트롤러를 처리할 수 있는 어댑터 있는지 검증(supports()) 후 어댑터 호출(handle()) 6. 이때 컨트롤러는 @Controller의 @RequestMapping이 붙어있으므로 HandlerAdapter의 가장 우선순위의 RequestMappingHandlerAdapter 어댑터 구현체가 호출되는 것! 7. 어댑터는 컨트롤러의 파라메터에 해당되는 타입의 객체가 ArgumentResolver의 구현체로 존재하는지 검증(supportsParameter()) 8. ArgumentResovler이 검증하던 중 컨트롤러의 파라메터 타입이 @RequestBody 혹은 HttpEntity임을 감지하고 RequestResponseBodyMethodProcessor 구현체가 동작하며 HTTP 메시지 컨버터 호출 9. RequestResponseBodyMethodProcessor 구현체는 HTTP 메시지 컨버터의 canRead()를 통하여 파라메터의 클래스 타입과 미디어 타입(Content-Type)을 검증하고 조건 만족하면 read()를 통해 HTTP 메세지 바디에 있는 데이터 변환 10. RequestResponseBodyMethodProcessor 구현체는 변환된 객체를 어댑터에 반환 11. 어댑터에선 반환된 객체를 컨트롤러의 파라메터에 주입하면서 컨트롤러 호출 12. 컨트롤러는 로직 수행 후 return 값(객체)을 어댑터에 반환 13. 어댑터는 ResultValueHandler 호출하면서 해당 반환값이 존재하는지 검증(supportsReturnType()) 14. 이때 ResultValueHandler에선 컨트롤러의 반환값이 @ResponseBody , HttpEntity임을 감지 후 RequestResponseBodyMethodProcessor 구현체가 동작하며 HTTP 메시지 컨버터를 호출 15. RequestResponseBodyMethodProcessor구현체는 HTTP 메시지 컨버터의 canWrite()를 통하여 파라메터 클래스 타입과 HTTP 요청 메시지에서의 미디어 타입(Accept)을 검증하고 조건 만족하면 write() 수행 16. write()에선 데이터를 변환하여 HTTP 응답 메세지 바디에 삽입 후 응답 메세지 클라이언트에게 반환감사합니다 !! 그리고 만약 제가 정리한 부분이 맞다면 HTTP API 방식으로 동작하는 경우 맨 마지막 16번에서 write() 이후에 만들어진 응답 메세지를 어디서 클라이언트에게 반환하는 건지 궁금합니다 !
-
해결됨[쥬신게임아카데미 버거쌤] 완전 초보자를 위한 게임 C++
컴파일러 셋팅 및 코딩의 시작에서
폰트 자료 올려두셨다는 곳이 어디예요...????
-
미해결
엑세스강의 를 추천받고 싶읍니다.
쉽고 빠르게 익히는 Access 2016 위 강의를 아주 유용하게 청강 하였읍니다. 기초를 확실하게 다져주는 좋은 알찬 내용이었읍니다.위 강의를 연속해서 상급수준으로 더 청강하고 싶은데강의가 개설되어 있으면 안내부탁합니다.엑세스와관련된 매크로와 모듈기능을 익히는 것도 좋습니다.감사합니다.
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
스크롤라 js에대해서..
선생님 질문이있습니다. 스크롤라 제이에스를 $(document).ready(function(){ $(".animate").scrolla({ mobile:true, once:false })})작성하고,html 에 동일하게 넣었는데<section class="visual animate" data-animate="motion">클래스가 motion 이렇게 붙는게아니라.. 선생님과 다르게 animate__motion 이렇게 붙습니다 혹시..이유를 할수있을까요?
-
미해결
React + Spring Oauth2.0 (구글로그인)질문있습니다..
아직 잘몰라서 궁금해서 여쭈어 봅니다 . 다른 방법이 있으면 힌트 부탁드립니다.. 꾸벅..<1>React + Spring oauth2.0 구글로그인 하는 중인데 이걸 스프링시큐리티해서 리다이렉트 경로로 바로 React 주소 + queryString 으로 accessToken을 넘겨주고 중간 페이지를 리액트에서 만들어서 그걸 저장하고 그걸로 회원정보를 조회할까요 ?<2> 아니면 그냥 RestController 에서@react-oauth/google 라이브러리로 버튼 만들어서 client_id 로 로그인 성공후 받은 구글 소셜 토큰을 스프링 RestController 에 받아 그럴로 Googleverify를 사용해 직접 구글 정보를 가지고 서비스단에서 회원가입 + 토큰 발급을 하고 난 후 유저정보를 json 으로 넘겨주는게 맞나요?.. 이러면 스프링 api 권한관련 설정이 또 흠..설명을 잘 못해서 죄송합니다.. <1> redirect + parm or 스프링 시큐리티 oauth successHandler send Redirect 에서 사용React 구글 로그인 버튼 = server주소/oauth2/authorization/google<2> 스프링 RestController 소설 임시 토큰 (스프링 Oauth successHandler사용 x)React 구글 로그인 버튼 = @react-oauth/google client_id 사용 고수님들 부탁드립니다.
-
해결됨스프링 프레임워크는 내 손에 [스프1탄]
Spring05 버전에서 이미지를 설정했을 때 권한이 보이지 않습니다
안녕하세요. 강의를 잘 듣고 있습니다.다름이 아니라 Spring05에서 로그인 후에 ( ) 안에 권한이 보여지는 부분의 문제 때문에 질문합니다.초기에 회원가입 후 권한을 설정했을 때는 아래와 같이 권한이 잘 나옵니다.하지만 프로필 사진을 등록하면 그 이후부터는 로그아웃 후 다시 로그인을 해도 권한이 보이지 않습니다. SQL을 확인해 보면 테이블에 권한은 삭제되지 않고 있는데 나오구요...header.jsp에서 권한이 보여지는 부분은 잘 작성된 거 같고 maapper.xml도 정상인 것 같은데 왜 프로필 사진을 등록한 이후에는 권한이 보여지지 않는건지 잘 모르겠습니다ㅠㅠ도움을 부탁드립니다!
-
미해결HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌1)
강의자료 텍스트 파일 마지막 줄에 있는 문장 질문드립니다
안녕하세요.. <button onclick="javascript:location.href='http://www.daum.net', '_blank'">다음사이트 바로가기</button> 여기서 _blank 는 무엇을 의미하나요? 그리고 쌍따옴표 안에 맨 앞에 javascript: 는 붙여도 되고 안 붙여도 되는걸까요??
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
"@ant-design/icons": "^5.0.1" 다운그레이드 하고서 error
package.json "dependencies": { "@ant-design/icons": "^5.0.1",위와 같이 수정 후 yarn.lock, node_modules 삭제 - yarn install 하여 재 설치 하여도 아래와 같이 err 문구는 사라지지 않았으며 yarn dev를 통해 웹페이지 확인 하면 정상적으로 icon은 출력됩니다.icon = 정상 출력 되나 코드상 error 문구는 삭제되지 않습니다.VS code 를 재시작 하여도code_modules 등 삭제 후 재설치 3~4번 하여도 동일합니다. yarn.lock 첨부합니다."@ant-design/icons-svg@^4.3.0": version "4.3.2" resolved "https://registry.yarnpkg.com/@ant-design/icons-svg/-/icons-svg-4.3.2.tgz#ab2e082991877fdc85b2b32f0b68628b716bad23" integrity sha512-s9WV19cXTC/Tux/XpDru/rCfPZQhGaho36B+9RrN1v5YsaKmE6dJ+fq6LQnXVBVYjzkqykEEK+1XG+SYiottTQ== "@ant-design/icons@^4.8.1": version "4.8.1" resolved "https://registry.yarnpkg.com/@ant-design/icons/-/icons-4.8.1.tgz#44f6c81f609811d68d48a123eb5dcc477f8fbcb7" integrity sha512-JRAuiqllnMsiZIO8OvBOeFconprC3cnMpJ9MvXrHh+H5co9rlg8/aSHQfLf5jKKe18lUgRaIwC2pz8YxH9VuCA== dependencies: "@ant-design/colors" "^6.0.0" "@ant-design/icons-svg" "^4.3.0" "@babel/runtime" "^7.11.2" classnames "^2.2.6" lodash "^4.17.15" rc-util "^5.9.4" "@ant-design/icons@^5.0.1": version "5.2.6" resolved "https://registry.yarnpkg.com/@ant-design/icons/-/icons-5.2.6.tgz#2d4a9a37f531eb2a20cebec01d6fb69cf593900d" integrity sha512-4wn0WShF43TrggskBJPRqCD0fcHbzTYjnaoskdiJrVHg86yxoZ8ZUqsXvyn4WUqehRiFKnaclOhqk9w4Ui2KVw== dependencies: "@ant-design/colors" "^7.0.0" "@ant-design/icons-svg" "^4.3.0" "@babel/runtime" "^7.11.2" classnames "^2.2.6" rc-util "^5.31.1"
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
args.BytesTransferred가 0인 이유가 뭘까요
강의 잘 보고 있습니다. 하나하나 다 따라해봤는데 전 강의 까지는 문제가 없었지만이상하게 이번강의 따라해보니 유니티와 서버의 연결은 잘된듯 한데 유저가 2명 이상이면 Disconnect를 호출하더군요 이유를 찾아보니까 OnRecvCompleted에서 첫 if문에 있는 args.BytesTransferred 가 계속 0인데 이는 서버측이든 클라측이든 0으로 되어있었습니다. 혹시 코드가 잘못된지 확인해봐도 모르겠어서 강사님께서 올려주신 코드로 서버와 클라를 연결 시켜봐도 똑같이 BytesTransferred가 0이어서 문제가 생기는데 왜 이러는지 알 수 있을까요?? 기기에 따라 다른가요