Back-End/Spring

[Spring] 게시판 만들어보기(기획, 구성)

챌링킴 2021. 9. 3. 20:54
반응형

1) 게시판 기획하기

Task URI Method Parameter From
전체 목록 /board/list GET ????  
등록 /board/regist POST 모든 항목 입력 화면 필요
조회 /board/get GET boardnum 리스트
삭제 /board/remove GET OR POST boardnum 조회
수정 /board/modify POST 모든 항목 입력 화면 필요

 

 

2) 페이지 구성하기

list.jsp > 글 등록 버튼 클릭 > regist.jsp > 등록 버튼 클릭 > list.jsp > 글 제목 클릭 > get.jsp > 수정 버튼 클릭

> modify.jsp > 수정 완료 버튼 클릭 > list.jsp  or  삭제 버튼 클릭 > list.jsp

 

 

3) 페이징 처리하기

- ORDER BY 대신 인덱스를 사용하면 정렬을 생략할 수 있다.

- 인덱스라는 존재가 이미 정렬된 구조이므로 이를 이용해서 별도의 정렬을 하지 않아도 된다.

- 데이터베이스 테이블을 하나의 책이라고 하면, 인덱스는 각 페이지 번호를 의미한다.

- 이를 통해서 원하는 내용을 원하는 방향으로 찾아나가는 것을 스캔한다고 표현한다.

 

- 데이터베이스에 새로운 테이블을 만들 때 PK를 부여하면 PK컬럼을 기준으로 인덱스가 생성되고

이름은 PK 제약조건의 이름과 동일하게 생성된다.

- 인덱스는 실제 테이블의 데이터가 어디에 저장되어 있는지를 찾을 수 있는 KEY값이다.

- 실제 테이블의 데이터가 저장된 각 행에는 ROWID라는 것이 존재하고 데이터베이스 내의 주소값을 의미한다.

 

 

4) 힌트(Hint) 알아보기

SELECT 뒤에 /*+ HINT구문 */

- SELECT 문에 실행하고 싶은 계획을 전달할 때 사용하는 문법을 뜻한다.

- 잘못 작성되어도 실행할 때에는 무시되며 별도의 오류가 발생하지 않는다.

 

- 페이징 처리에서는 이미 정렬된 인덱스를 기준으로 내림차순으로 가져오는 문법을 힌트 내에 작성해준다.

INDEX_DESC(테이블명 인덱스명)

- 별도의 정렬이 필요가 없어지므로 속도가 향상된다.

반응형