학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 복습겸 개인 프로젝트를 하고 있는데요, 로그인과 회원가입을 각각 검증기를 넣어주려고 하는데, 두 가지 검증기를 넣으니 다른 한 쪽에서는 오류가 발생합니다. 예를 들어, 로그인 페이지에 들어갈 경우에는 java.lang.IllegalStateException: Invalid target for Validator [com.weblibrary.domain.user.validation.JoinValidator@135416b2]: LoginUserDto(username=null, password=null) 이런 식입니다. supports에 해당하지 않으면 무시하는 게 아니라, 예외가 발생하는 걸까요? 이런 경우 어떻게 해결하는 게 좋을까요? package com.weblibrary.domain.user.controller; import com.weblibrary.domain.user.model.JoinUserDto; import com.weblibrary.domain.user.model.LoginUserDto; import com.weblibrary.domain.user.model.User; import com.weblibrary.domain.user.service.UserService; import com.weblibrary.domain.user.validation.JoinValidator; import com.weblibrary.domain.user.validation.LoginValidator; import jakarta.servlet.http.HttpSession; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.validation.BindingResult; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.WebDataBinder; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.InitBinder; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PostMapping; /** * 유저 회원가입 컨트롤러, GET, POST에 따라 다르게 동작. */ @Controller @RequiredArgsConstructor @Slf4j public class AccountController { private final UserService userService; private final LoginValidator loginValidator; private final JoinValidator joinValidator; @InitBinder public void initLoginBinder(WebDataBinder dataBinder) { dataBinder.addValidators(loginValidator); dataBinder.addValidators(joinValidator); } /* join form 보여주기 */ @GetMapping("/join") public String joinForm(Model model) { model.addAttribute("user", new JoinUserDto()); return "home/join"; } /* 회원가입 처리하기 */ @PostMapping("/join") public String join(@Validated @ModelAttribute("user") JoinUserDto user, BindingResult bindingResult) { log.debug("objectName={}", bindingResult.getObjectName()); log.debug("target={}", bindingResult.getTarget()); log.debug("Input User DTO: {}", user); if (bindingResult.hasErrors()) { log.debug("errors={}", bindingResult); return "home/join"; } // 회원가입 후에 홈으로 리다이렉트 return "redirect:/"; } @GetMapping("/login") public String loginForm(Model model) { model.addAttribute("user", new LoginUserDto()); return "home/login"; } /* 로그인 처리하기 */ @PostMapping("/login") public String login(@Validated @ModelAttribute("user") LoginUserDto user, BindingResult bindingResult) { log.debug("objectName={}", bindingResult.getObjectName()); // loginUserDto로 나오고 있었다. @ModelAttribute("user")로 해결 log.debug("target={}", bindingResult.getTarget()); // 정상적으로 LoginUserDto 인스턴스를 찾아옴. log.debug("Input User DTO: {}", user); if (bindingResult.hasErrors()) { log.debug("errors={}", bindingResult); return "home/login"; } // 로그인 후에 홈으로 리다이렉트 return "redirect:/"; } @PostMapping("/signout") public ResponseEntity<String> signOut(HttpSession session) { User user = (User) session.getAttribute("user"); log.debug("login user={}", user); if (user == null) { return new ResponseEntity<>("로그인되지 않았습니다.", HttpStatus.FORBIDDEN); } session.setAttribute("user", null); return new ResponseEntity<>("로그아웃 되었습니다.", HttpStatus.OK); } }
프로그래밍 시작하기 : 도전! 45가지 파이썬 기초 문법 실습 (Inflearn Original)
맥북 유저입니다. 다른 분들처럼 in[]으로 뜨지도 않고 초록색으로 변하지도 않고, python 3 (ipykernel)이 뜨지 않아 그냥 진행했는데 영상보고 shift+enter누르면 숫자가 올라가다가 이미지처럼 하단에 순서대로 새 창이 생깁니다.. 이렇게 진행하는게 맞을까요? 프로그램 삭제 이후 재설치도 해보았습니다. 해결 방안을 자세한 경로로 공유부탁드립니다. !
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요. 여기서 코드 상으로는 sout 1,4,2,3 순서로 작성하였는데 출력결과에서는 어떻게 1,2,3,4 순서대로 출력되는지 궁금합니다.
# 아래를 수행하기 전에 kernel을 restart 해야 함. from mmdet.apis import init_detector, inference_detector import mmcv /usr/local/lib/python3.11/dist-packages/mmcv/__init__.py:20: UserWarning: On January 1, 2023, MMCV will release v2.0.0, in which it will remove components related to the training process and add a data transformation module. In addition, it will rename the package names mmcv to mmcv-lite and mmcv-full to mmcv. See https://github.com/open-mmlab/mmcv/blob/master/docs/en/compatibility.md for more details. warnings.warn( --------------------------------------------------------------------------- ImportError Traceback (most recent call last) <ipython-input-1-635200d92710> in <cell line: 0>() 1 # 아래를 수행하기 전에 kernel을 restart 해야 함. ----> 2 from mmdet.apis import init_detector, inference_detector 3 import mmcv 5 frames /usr/lib/python3.11/importlib/__init__.py in import_module(name, package) 124 break 125 level += 1 --> 126 return _bootstrap._gcd_import(name[level:], package, level) 127 128 ImportError: libcudart.so.11.0: cannot open shared object file: No such file or directory --------------------------------------------------------------------------- NOTE: If your import is failing due to a missing package, you can manually install dependencies using either !pip or !apt. To view examples of installing some common dependencies, click the "Open Examples" button below. --------------------------------------------------------------------------- mmdetection 임포트 문제발생합니다.
[질문 내용] 단방향 연관관계 영상 22분 10초 쯤에서 Member클래스에 Team 필드 어노테이션으로 @ManyToOne(fetch = FetchType.LAZY)를 지정하고 서버를 재실행하였을 때 김영한 강사님 콘솔에서는 쿼리가 지연로딩되어 분리돼서 Member와 Team이 따로 조회가 되는걸로 나와있는데요 저도 같은 환경으로 실행하였을 때는 한 DB테이블만(MEMBER) 만 조회돼서 나오는데 왜 이러는 것인지 궁금합니다 .
질문 남겨주셔서 감사합니다. 막히면 언제든 무엇이든 자주 질문 던져주세요. 수학/과학이나 알고리즘과는 달리 업무자동화 코딩은 고민해서 풀리는 경우가 정말 드뭅니다. 다시 말씀드리지만, 질문을 자주자주 남겨주세요. 저도 최대한 빠르게 회신 드리겠습니다. 당부드릴 두 가지가 있습니다. ① 가급적 구체적으로 설명해주세요. ② 특정 챕터 관련 질문 남겨주실 때는, 어느 챕터인지 알려주세요ㅜ ==================================== 빈 화면이 보이는데 저만 그런걸까요? 다른 챕터들은 다 잘 나오는데 이 챕터만 안보이네요. 확인 부탁드리겠습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예 /아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] .\gradlew build를 했더니 오류가 떠요 PS C:\Users\chyt7\OneDrive\바탕 화면\study\hello-spring> .\gradlew build > Task :test FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':test'. > There were failing tests. See the report at: file:///C:/Users/chyt7/OneDrive/%EB%B0%94%ED%83%95%20%ED%99%94%EB%A9%B4/study/hello-spring/build/reports/tests/test/index.html * Try: > Run with --scan to get full insights. BUILD FAILED in 2s 7 actionable tasks: 1 executed, 6 up-to-date
안녕하세요! 제가 이해하고 있는 부분이 맞는지 궁금합니다. LinkedList<Integer>[ ] buckets = new LinkedList<>[ ] 를 하면, LinkedList<Integer> 타입을 갖을 수 있는 배열이 생성되고, buckets[0] , buckets[1] .. .. 처럼 인덱스 번호를 이용해서 접근가능합니다. 여기서 궁금한점은 LinkedList<Integer> 타입으로 구성된 각 배열들은 LinkedList<Integer>의 인스턴스가 생성된것이 아니라, 단지 LinkedList<Integer>의 타입을 갖을 수 있는 참조 변수 인건가요?? 그 후에 각 참조변수 안에서 new LinkedList<>의 코드를 사용해서, LinkedList<>의 인스턴스가 생성되어 연결된것인가요?? 그렇기 때문에, add 메소드에서, buckets[1].add와 같은 문장이 생성될 수 있었는지 여쭤보고싶습니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 강의의 @Table(name = "orders") 이 부분 때문에 궁금한 점이 생겼습니다. @Entity @Table(name = "orders") @Getter @Setter public class Order { . . . } 이 경우 데이터베이스에 생성되는 테이블명이 orders로 복수형이 되는데, DB를 설계할 땐 테이블명들을 전부 단수형을 쓰든, 전부 복수형을 쓰든 하나로 전부 통일하는 게 낫다고 들었습니다. 그럼 실무에서 데이터베이스 테이블명을 전부 복수형으로 통일한다면, 자바 코드의 엔터티 클래스 이름은 단수로 하고, @Table을 통해 복수형으로 바꾸게 되나요? 아니면 이 경우 @Table을 일일이 적기 번거로우므로 자바 클래스 이름도 복수형으로 하나요? 즉 예를 들어 @Table("items") public class Item {} 이런 식으로 모든 엔터티 클래스에 @Table을 통해 복수형 이름을 지정하는지, 아니면 @Table 애노테이션을 안 쓰고 public class Items {} 이렇게 클래스 이름 자체를 복수형으로 쓰는지 궁금합니다.
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] onclick=겹따옴표 내부에 홀따옴표 이후 변수가 제대로 표현이 안되는데 어떻게 해야 할까요? 예를 들어 원하는건 다음과 같습니다. onclick="location.href='/edit/변수'" 변수의 형태는 ${item.id} 입니다. 아래와 같이 시도를 해보았습니다. th:onclick="|location.href='@{/edit/${item.id}}'|" 위와 같이 시도를 해 보았는데 웹페이지 소스보기를 하면 아래와 같이 출력이 됩니다. onclick="location.href='/edit/${item.id}'" 홀따옴표 앞에 역슬래시, 백틱 등등 해볼건 다 해보았는데 잘 안되네요. 뭔가 분명히 방법이 있을 것인데요. 조언 부탁 드립니다. 감사합니다.
안녕하세요 . int 타입의 경우 배열을 생성하였을때 int는 4바이트로 메모리크기가 정해져있고 그에 따라 (배열주소 * int의크기(4)) 로 O(1) 로 찾을 수 있다고 이해했습니다. 그럼 그렇다면 Object [] 배열의 경우에도 동일하게 동작하나여? Object나 다른 참조타입의 경우에도 메모리에서 각각의 인덱스의 참조주소가 동일한 크기를 가지고 배열이 생성될까요?
Member findMember = em.getReference(Member.class, member.getId()); System.out.println("findMember.getClass() = " + findMember.getClass()); //System.out.println("findMember.getId() = " + findMember.getId()); //em.detach(findMember); //em.clear(); //em.close(); System.out.println("findMember.getUsername() = " + findMember.getUsername()); 강의 38:40 초 내용 입니다 강의에선 em.close 를 하면 초기화 예외가 발생하는데 시간이 지나서 좀 바뀐건지 em.detach, clear 는 예외가 발생하는데 close 는 영속성 컨텍스트가 꺼지지 않고 정상적으로 작동을 해서 username 이 출력이 되네요 다른 분들도 그런건지 확인 차 질문드립니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] JDBC 연동 질문입니다. test.mv.db 가 C://USERS/USER/안에 만들어졌습니다. 하지만 인텔리제이에서 url로 진입시에 계속해서 Driver org.h2.Driver claims to not accept jdbcUrl 에러가 뜹니다. 다른 문의들 많이 참고해서 설정들도 꼼꼼히봤고, https://docs.google.com/document/d/1j0jcJ9EoXMGzwAA2H0b9TOvRtpwlxI5Dtn3sRtuXQas/edit?tab=t.0 링크에 H2데이터베이스 접속 오류 해결방안2를 그대로 했지만 h2콘솔에서는 접속이 잘되는 것 같은데 인텔리제이에서는 url 을 찾지 못하는 것 같습니다. 아래는 코드 입니다. 몇시간째 제자리라서 도움 부탁드립니다ㅜ
이번에 면접을 보면서 확실하게 대답을 못해서 고민 끝에 선생님에게 질문 드립니다. 우선 시나리오 말씀드리자면 client 가 해당 게시글에 "좋아요" 등록을 하게 된다면 좋아요 등록 관련 DB 테이블에 insert 동시에 outbox 테이블에도 insert 하도록 설계 되어 있습니다. commit 이 정상적으로 발생되면 kafka 서버에게 이벤트 메시지를 발행 하게 되는데요. 만약 갑자기 이벤트 발행시 kafka 서버가 죽었다고 하면 복구 될때 까지 기다리다가 retry 통해 아직 메시지 발행 하지 못한 메시지 outbox 테이블에 조회해서 메시지 발행 하면 문제가 없을 것 같은데요. 하지만 다시 처음부터 설명하면 client 가 좋아요 등록 후 DB 서버가 죽어서 "좋아요" 관련 테이블 및 "outbox" 테이블에 insert 를 못했다고 가정 했을때 어떻게 대처 해야 하는지 역으로 질문 받았습니다. 일단 DB 서버가 죽었으면 빠르게 고객에게 에러 메시지를 전달과 동시에 담당 개발자에게 빠르게 전달 할 수 있도록 전달 해야 한다고 했습니다. (회사에서 slack 메신저 사용하면 메신저 통해 알림) 혹시 이것보다 더 좋은 방법이 있을까요? 재대로 대답하지 못해 찜찜해서 이렇게 선생님에게 질문 드리네요.