20240718

Korangii·2024년 7월 18일
0

Java

목록 보기
21/24

페이지네이션

적용 대상

  • 목롥 보기
  • 검색

페이지네이션을 위한 기본 정보

  • 한 페이지 당 데이터 건수 -> limit값
    • grid : 12건 (card 형태)
    • pc : 10건 (table 형태)
  • 현재 페이지 -> offset 계산
  • 전체 데이터 개수와 현 페이지
  • (n-1) 현 페이지의 개수
private int page; // 요청 페이지
private int size; // 한 페이지 당 데이터 건수
private int order; // 
  • DTO(Data Transfer Object) :
  • DAO(Decentralized Autonomous Organization)
  • factory method

사용자와의 인터페이스 방법

페이지네이션 결과 구성하기(9p)

  • 기본 구성 내용(캡슐화 필요)
    • 전체 데이터 건수
    • 전체 페이지 수 : 전체 데이터 건수 + 현재 페이지 번호
    • 현재 페이지 번호
    • 현재 페이지의 데이터 목록 : return new Page(매개변수, ... ); 사용

page 건수를 통해 리턴

목록보기/검색하기에서 사용
단위기능으로 메서드로 구분

같으면 대괄호로 묶어서 출력
다르면 그냥 출력
웹이면 css로 다르게 효과 주기

루프를 끝낸다.


Context (3p)
key는 Class
Value는 object(무엇이 와도 상관없다.)

⭐매개변수의 실제 타입을 바탕으로 리턴해준다.

public static <T> T getBean(Class<T> clazz) {
  return (T) context.map.get(clazz);
  }

싱글톤 객체 : 직접 운영 안하고 싱글톤 객체처럼 사용한다.
스프링 기술 : context를 통해 싱글톤 패턴으로 객체를 운영할 수 있다. 약결합으로 운영 가능
(5p)

UserDao dao = Context.getBean(UserDao.class);

Spring Context

  1. gradle(short) 에서 복사
  2. settings.gradle에서 프로젝트명 변경
  • rootProject.name = 'ScoulaTodoSpring'
  1. build.gradle에서 스프링 추가
  • dependencies에 아래 내용 추가하기
    implementation 'org.springframework:spring-context:5.3.37'
    ' 추가

배열로 패키지명 추가


@Bean 객체 만들기

  • default로 메서드명이 이름이 된다.
  • map을 먼저 찾는다. 있으면 바로 리턴 / 없다면 실행한다.(호출 후 딱 한 번만 실행한다. 리턴되는 객체를 등록한다.)
  • map에 있으면 리턴, 없으면 실행
  • 모두 싱글톤 패턴으로 운영된다.

@Component 만들기

TodoDao 등록하기

@Autowired

  • 자동으로 주입하기
  • 컨텍스트에 커넥션 타입 유무 확인, 있으면 배정 / 없으면 null
  • 여러개가 이름으로 연결되는 어노테이션 사용하기

Travel

  • cp949 utf 파일 인코딩은 처리 못한다.
  • csu 첫 줄 : no, district 이름으로 mapping함(순서가 아닌)
  • build()를 만들고 parse()하기0813
  • 데이터베이스는 snake_case가 기본이다.
  • 자바는 camelCase가 기본이다.
profile
https://honeypeach.tistory.com/ 로 이전했습니다.

0개의 댓글