안녕하세요, 영한님! jpa 페이징 api를 이용해서 간단한 페이징 화면을 구현해 봤는데 잘못된 부분이 있는지 궁금해서 질문드립니다! <memberList.html> < div class ="pagination" > < span th :each ="pageNum : ${ pageList } " th :inline ="text" > < a th :href =" @{ '/members?page=' + ${ pageNum }} " > [[${pageNum}]] </ a > </ span > </ div > 컨트롤러에서 받아온 pageList를 뿌려주고 특정 페이지를 누르면 해당 페이지로 이동하게 만들었습니다. <MemberRepository.java> // 전체 회원 조회 public List < Member > findAll ( int page) { return em . createQuery ( "select m from Member m order by m . id desc" , Member . class ) . setFirstResult ((page - 1) * 10) . setMaxResults (10) . getResultList () ; } // 전체 게시물의 개수 (100 개 ) public int boardCount () { return em . createQuery ( "select m from Member m " , Member . class ) . getResultList () . size () ; } 페이지 별로 10개씩 끊어서 가져오는 메서드와 페이지 수를 구하기 위해 전체 게시물의 개수를 구하는 메서드 2개를 추가했습니다. <MemberService.java> // 페이지 별 회원 조회 public List < Member > findMembers ( int page) { return memberRepository . findAll (page) ; } // 페이지의 개수 public int [] pageList () { int totalPage = memberRepository . boardCount () / 10 ; totalPage = (( memberRepository . boardCount () % 10) == 0) ? totalPage : totalPage + 1 ; int [] pages = new int [ totalPage ] ; for ( int i = 0 ; i < totalPage ; i ++ ) { pages [ i ] = i + 1 ; } return pages ; } findMembers(page) : 페이지에 해당하는 멤버 리스트를 조회 pageList() : 전체 페이지의 개수 리턴 <MemberController.java> @GetMapping ( " /members " ) // 처음 리스트를 들어가면 Page 번호는 1 번이 디폴트 ! public String list ( Model model , @RequestParam (value = " page " , defaultValue = "1" ) int pageNum) { List < Member > members = memberService . findMembers (pageNum) ; // 페이지 번호 별 게시물 int [] pages = memberService . pageList () ; // 페이지 개수 model . addAttribute ( "members" , members ) ; model . addAttribute ( "pageList" , pages ) ; return " members/memberList " ; } @RequestParam을 이용해서 처음 /members를 실행한 경우 1번 페이지를 출력하게 만들었고, 페이지 별 멤버리스트와 전체 페이지의 개수를 model에 담아서 화면쪽으로 넘겨서 구현했습니다. 잘못 구현하거나 고칠 부분이 있는 지 궁금합니다..! 아래는 결과화면 입니다!
안녕하세요 강사님 querydsl 에서 rank 함수 사용법 문의드립니다. 개인적으로 검색해본 결과는 SqlQueryFactory를 사용해서 SqlExpression을 쓰면 되던데.. 해당 내용으로 변경해서 querydsl 을 호출하니 엔티티 및 속성 맵핑이 제대로 안되더라구요 예를 들어 엔티티명이 Customer , 실제 테이블명 CUST 일 경우, Customer로 쿼리를 날려 테이블이 존재하지 않는다고 오류가 발생합니다. 어떻게 사용해야할까요? ㅠㅠ 답변 부탁드립니다. 감사합니다!
안녕하십니까 강사님 수업을 듣는 중에 DispatcherServlet이 실행되는 과정을 말씀해주셨는데 제가 이해한 내용이 맞는지 궁금하여 여쭤봅니다. 1. DispatcherServlet의 부모인 FrameworkServlet의 service메서드를 실행하면서 누가 실행시키는 것인지는 모르지만 DispatcherServlet의 doDispatch 메서드가 실행이 되면서 handler를 찾고 adapter를 찾게 된다. 2. DispatcherServlet을 서블릿으로 자동으로 등록하신다고 말씀하셨는데 어떻게 등록하지?라는 궁금점이 생겨 찾아보았습니다. https://docs.spring.io/spring-framework/docs/current/reference/html/web.html#mvc-servlet-config 에서 ServletInitializer가 결국 WebApplicationInitializer를 구현하는데 이 인터페이스는 'DispatcherServlet 의 위치를 지정하는 메서드를 재정의하여 DispatcherServlet을 등록하는 것을 훨씬 쉽게한다'고 하는데, ServletInitializer에 의해 등록이 되는거로 생각하면 되는건가요??? 3. servelet은 자바를 사용하여 웹페이지를 동적으로 생성하는 서버 측 프로그램이라고 알고 있는데 DispatcherServlet을 서블릿으로 자동으로 등록한다는 의미는 DispatcherServlet을 이용하여 웹 페이지를 동적으로 생성한다 라는 말과 같을까요?? 4. 강의에서 클래스 레벨에 @Component만 붙게 된다면 핸들러 매핑을 따로 해줘야한다. 라는 말씀을 하셨을 때는 이해가 되지 않았는데 강의를 들어보니 @Component는 단지 빈으로 등록하는 것이고, 핸들러 조회를 하게 되면 조회가 되지 않는다. 따라서 @RequestMapping을 사용하여 핸들러 매핑을 해줘야 DispatcherServlet이 핸들러를 조회할 때 조회가 된다 라고 이해하면 될까요?? 읽어주셔서 감사합니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확 내용이곧제목입니다 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://docs.google.com/document/d/1j0jcJ9EoXMGzwAA2H0b9TOvRtpwlxI5Dtn3sRtuXQas/edit#heading=h.w2tomwsznga7) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://docs.google.com/document/d/1xCQKit-1V6l6ObeCe49St33RHPzLF_P_c3o7aSDTKs0/edit#heading=h.7dhnp46ven0v) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요.
설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 맛비님 수업과는 관계된 내용이 아니라 죄송스럽지만 혹시 비바도를 한국에서 구매하셔서 쓰시나요? 회사에 적용하려고 하는데 구매처가 안나와서요.
1) 강의 대로 환경변수 설치까지 했는데 cmd 창에서 godoc 커맨드가 실행되지 않습니다. 2) Atom에서 패키지 다 설치했는데 함수에 커서 대고 alt-D를 눌러도 Reference 항목에 Generating documentation...만 출력되고 이후 되지 않네요. 3) 현재 쓰는 pc가 rtx3090인데 우측 에러들 혹은 추후 Golang을 사용하는데 충돌 혹은 연관이 있을까요? 런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요 항상 수준 높은 강의에 감사드립니다. 몇 가지 의문점이 생겨서 질문하고자 작성하게 되었습니다. test에서 @Transactional 어노테이션이 롤백을 하신다고 강의에서 말씀하셨는데, 궁금한 점은 em.persist를 한 시점에서는 영속화 한 객체에 대해서 id 값은 영속성 컨텍스트에서 관리되면서 자동으로 부여되는건가요? db 에 isnert 하기 전부터 이미 id 값이 부여되서 관리되고 있는지 궁금합니다. 감사합니다.
안녕하세요 강사님 강의 잘 보고 있습니다. 반복문이 돌 때 제가 차트에 대한 이해도가 부족해서 그러는데 close1이 아니라 왜 close2를 쓰는지 궁금합니다. 혹시 추가설명 좀 해주실 수 있으신가요?ㅠ 25분에 close price가 700원이라고 치면 25분에 sma7는 25분을 포함한 과거 7분에 대한 값인걸 데이터로 확인했는데요 근데 왜 굳이 26분의 close price 을 가져와서 사용하는가용?? 그냥 이해가 안되서요
주제 5 workflow를 실행했는데 진행률이 저렇게 빨간색으로 뜨네요; 일단 위와 같이 select문은 잘 실행되어서 무시하고 계속 진행했는데 위와 같이 more /home/pilot-pjt/item-buy-list/000000_0 가 실행되지 않습니다. 그럼 workflow 과정에서 문제가 있었다고 보면 될까요? 혹시 주제 2~4단계에서는 working_day=20200322 를 입력했지만, 주제 5 에서는 저걸 입력하라는 말이 없어서 안 넣었는데 그 문제일까요? 일단 쿼리들은 보시면 아시겠지만 잘 복붙했습니다!
1. 크롬 실행 2. F12를 누르고 개발자 모드에 들어감 3. Elements / Console / Sources / Network >> 탭에 있는 것들 중 Console을 선택한다. 4. Console창 내부에 navigator.userAgent 를 입력하면 현재 사용 중인 환경 검색가능
선생님 안녕하세요. 에프터이펙트, 로디, 스크립트 다 부족한 디자이너입니다. 제가 쓰는 에프터이펙트가 cc 2017버전이라 bodymovin이 깔리긴 하는데 회색 화면만 나오더라구요. 강의에서 버전이 안맞아서 그렇다고 하셔서 깔았다 지웠다 난리 치다 포기해서 강의를 들을수있을까 했는데 우선 에프터이펙트 최신버전 체험판으로 했더니 되더라구요. -------- 궁금한점: 현재 나오는 메뉴 예제는 익스플로러 11에선 안나오던데 왜 그런지요? 요청사항: 혹시 ㅜㅜ 동영상에 나오는 에프터이펙트로 메뉴 만든것 공유가능하실지 조심스레.. 여쭤봅니다. 계속 강의 시청하겠습니다 선생님~
안녕하세요 항상 좋은 강의 제공해주셔서 감사드립니다. 강의를 듣다보니 dao와 repository의 차이점이 궁금해서 질문을 남깁니다. 검색해보니 dao는 data persistence의 추상화 , repository는 collection of objects의 추상화라고 하는데, 사실상 둘의 기능은 비슷하다고 생각합니다. 하지만 둘의 차이를 명확하게 알고 싶어 질문드립니다. 혹시 mybatis를 사용할때 sql과 매핑할때 dao를 사용하고, repository는 엔티티를 영속성 컨텍스트에 영속화 시킬때 사용하는건가요???