개인 공부/TIL

TIL #220615 #JSP 게시판 만들기 #Network DNS

kaleb 2022. 6. 15. 22:52
728x90

 

수요일도 벌써 끄읏!!...매일 국비교육 8시간배우고 운동하고 저녁에 블로깅을 하려니 굉장히 피곤하네요

하지만 더 열심히하고 잘하시는 분들이 세상에는 가득하답니다. 더 큰 우물안의 개구리가 되려면  열심히 해야겠지요?

제일 큰 우물을 향해서 오늘도 열심히 TIL달려봅시다. 파이팅!!

 

오늘은 오전 JSP 오후 Network순으로 진행 되었습니다.

JSP의 경우 개인 게시판을 천천히 만들어 가고 있는데요

이전에 DAO, DTO 그리고 인스턴스가 중요할거라고 생각하고

며칠동안 반복해서 복습을 진행 하였습니다. TIL 덕분에 도움이 많이 되었던 것 같습니다.

구독과 좋아요

 

참고 : Java 생성자와 Getter Setter, JSP DAO DTO 

https://meerkat127.tistory.com/14?category=1062369 

 

TIL #220523 #JSP #JAVA

주말이 사라지고 새로운 주가 시작되었습니다. (주말은 어디갔을까요?) 오늘은 JSP수업이 있을 줄 알고 긴장하고 왔지만 오전 직업기초시간, 오후 JAVA수업으로 비교적 편안한 하루가 될줄 알았지

meerkat127.tistory.com


본 글에서는  페이징 처리하는 부분이 조금 헷갈리기도하고 가볍게 넘어간 경험이 있어서 조금이나마 적어 보았습니다.

오전 JSP 게시판 만들기

  • 페이징 처리
// 페이징 처리에 필요한 변수 선언
int pageNum = 1; // 현재 페이지 번호 (기본값이 1인 페이지로 설정합니다)
int listLimit = 10; 
int pageLimit = 10;

if(request.getParameter("pageNum") != null) {
	pageNum = Integer.parseInt(request.getParameter("pageNum"));
}
// 기본 페이지를 1로 설정하기위해서 조건을 걸어줍니다.

int maxPage = (int)Math.ceil((double)listCount / listLimit);
int startPage = ((int)((double)pageNum / pageLimit + 0.9) - 1) * pageLimit + 1;
int endPage = startPage + pageLimit - 1;

 

  • pageNum : 현재 페이지 번호
    기본값이 1인 페이지로 설정합니다.
  • listLimit : 한 페이지당 표시할 게시물의 수

  • pageLimit : 한 페이지 당 표시할 페이지 목록의 수
    1 - 10, 11- 20, 21- 30, …

  • listCount :
    “SELECT COUNT(*) FROM 테이블명;” 구문을 활용하여 게시판에 올라가있는 게시글의 총 개수를 구합니다.

  • maxPage :
    페이지 목록의 수가 10이고 한 페이지에 10개의 게시글을 볼 수 있습니다.
    만약 게시글이 45개일 경우 4개의 완전한 목록을 출력하는 페이지와 과 5개의 게시글을 출력할 수 있는 추가 페이지가 필요합니다. 즉 5개의 페이지가 필요합니다.
    이를 계산하기 위해서 double로 형변환을 한 listCount에 / listLimit을 나누어줍니다.
    실수의 값을 Math.ceil을 통해서 올림처리를 해주고 maxPage에 그 값을 담기 위해서 다시 int형으로 형변환을 해줍니다.

  • startPage : 현재 페이지목록 세어 보여줄 시작 페이지 번호입니다.
    1, 11, 21, ... 로 시작합니다.
    Ex_
    pageNum = 1, pageLimit = 10일 경우 (0.1 + 0.9) - 1 * 10 + 1 = 1이 됩니다.
    pageNum = 9, pageLimit = 10일 경우 (0.9 + 0.9) - 1 * 0.8 + 1 = 9가 됩니다.

  • endPage : 현재 페이지 목록에서 마지막 페이지 번호입니다.

오후 Network

  • Name resolution :

Converting a name into the address required by a machine or network.

 

사람은 ip주소를 기억하고 구분하기 어렵기 때문에, 도메인 이름을 사용하여 Host들을 식별합니다.

이러한 도메인 이름(DNS)을 IP주소로 변경하는 과정을 Name resolution 이라고 합니다.

도메인 이름 Ex_

www.itwillbs.co.kr

www : 4 레벨 도메인

itwillbs : 3레벨 도메인

co : 2레벨 도메인

kr : 최상위 레벨 도메인

DNS의 구조

  • Authoritative DNS Server : 권한이 있는 네임 서버
  • Resolver DNS Client : 서버에 질의를 보내는 리졸버
  1. 장비가 데이터베이스가 없는 도메인을 질의합니다.
  2. 리졸버 네임서버는 루트네임서버를 찾아 질의합니다.
  3. 루트네임서버는 최상위레벨 네임 서버의 IP를 리졸버 네임 서버에게 알립니다.
  4. 리졸버 네임서버는 최상위 레벨 서버를 찾아가서 질의합니다.
  5. 최상위 네임서버는 2레벨 네임서버릐 주소를 리졸버 네임서버에게 알립니다.
  6. 리졸버 네임서버는 2레벨 네임서버를 찾아가서 질의합니다.
  7. 2레벨 네임서버는 3레벨서버주소를 리졸버 네임서버에게 알립니다.
  8. 리졸버 네임서버는 4레벨까지의 주소로 접근하여 IP주소를 얻어냅니다.

캐싱 네임서버와 마스터네임서버

  • 캐싱 네임서버 :
    자체적인 데이터베이스 파일은 없고, 질의하는 도메인에 대한 IP 주소만 상대방에게 알려주는 역할을 하는 서버입니다.
  • 마스터 네임서버 : 자체적으로 데이터베이스 파일을 관리하는 네임서버입니다.

 

네트워크 시간은 너무 어려워요..

반응형

'개인 공부 > TIL' 카테고리의 다른 글

Linux에서 Apache 띄우기  (0) 2023.01.02
TIL #Java 인터페이스 #DB ALTER, DROP, VIEW  (0) 2022.06.20
TIL #220614 #DB #JAVA  (0) 2022.06.14
TIL #220613 #JSP # JAVA  (0) 2022.06.13
TIL #220608 #JSP # DB  (0) 2022.06.08