Java Collections Framework

1. List 인터페이스 (ex.출석부)
- 순서가 있는 데이터의 집합으로 데이터의 중복을 허용한다.
★ArrayList
- 단방향 포인터 구조로 각 데이터에 대한 인덱스를 가지고 있어 조회 기능에 성능이 뛰어남
LinkedList
- 양방향 포인터 구조로 데이터의 삽입, 삭제가 빈번할 경우 데이터의 위치정보만 수정하면 되기에 유용
- 스택, 큐, 양방향 큐 등을 만들기 위한 용도로 쓰임
Vector
- 과거에 대용량 처리를 위해 사용했으며, 내부에서 자동으로 동기화처리가 일어나 비교적 성능이 좋지 않고 무거워 잘 쓰이지 않음
2. Map 인터페이스 (ex.404반)
- 키(Key), 값(Value)의 쌍으로 이루어진 데이터의 집합으로, 순서는 유지되지 않으며 키(Key)의 중복을 허용하지 않으나 값(Value)의 중복은 허용한다.
★HashMap
- 중복과 순서가 허용되지 않으며 null값이 올 수 있다.
Hashtable
- HashMap보다는 느리지만 동기화 지원
- null불가
TreeMap
- 정렬된 순서대로 키(Key)와 값(Value)을 저장하여 검색이 빠름
3. Set 인터페이스(ex.무지개색 구슬주머니)
- 순서를 유지하지 않는 데이터의 집합으로 데이터의 중복을 허용하지 않는다.
★HashSet
- 가장빠른 임의 접근 속도
- 순서를 예측할 수 없음
TreeSet
MVC
Controller
Service
DAO
DB
ORM(ex. iBatis, MyBatis)
- Object Relational Mapping(객체-관계-매핑)의 약자
기존 페이지(login.html)에 머무르기...
response.sendRedirect("Login.jsp"); //새로운 url을 요청 => request.setAttribute는 sendRedirect안된다 하려면
response.sendRedirect("Login.jsp?msg="+ msg); get방식으로 해야한다.
아니면 session으로 해야함 로그인 안 해도 세션 사용 가능
연습문제
1. 정적 웹 페이지와 동적 웹 페이지의 차이점을 설명하시오.
- 정적 : 컴퓨터에 저장된 텍스트 파일을 그대로 봄(HTML)
- 동적 : 저장된 내용을 다른 변수로 가공 처리하여 봄(PHP, ASP, JSP)
2. 웹 프로그래밍 언어 JSP의 특징을 설명하시오.
- 웹 프로그래밍 언어
- 클라이언트 측 실행 언어와 서버 측 실행 언어로 구분
- 자바를 기반으로 하는 JSP는 서버 측 웹 프로그래밍 언어 중 하나
- JSP는 서블릿 기술의 확장
- JSP는 유지 관리가 용이
- JSP는 빠른 개발이 가능
- JSP로 개발하면 코드 길이를 줄일 수 있음
3. JSP페이지의 처리 과정을 설명하시오.
- 웹 브라우저(클라이언트) JSP요청 -> JSP페이지(.jsp) -> 번역 -> 서블릿프로그램(jsp.java) -> 컴파일 -> 서블릿클래스(jsp.class) -> JSP 서블릿 실행 응답(가공된 HTML 문서)
이런 유용한 정보를 나눠주셔서 감사합니다.