[Java] 디자인 패턴 정리
·
Java/Design Pattern
디자인 패턴  - 공통적으로 발생하는 문제에 대해 자주 쓰이는 설계 방법을 정리한 패턴   - 장점      · 개발자 간에 원활한 소통 가능      · 소프트웨어 구조 파악 용이      · 재사용성 UP → 개발 시간 단축      · 설계 변경 요청에 대한 유연한 처리   - 단점      · 객체 지향 설계/구현에 대한 지식이 필요함      · 초기 투자 비용에 대한 부담  생성 패턴  - 객체를 생성하는 것과 관련된 패턴 #  싱글톤 패턴 (Singleton)  - https://young0105.tistory.com/186 #  빌더 패턴 (Builder)  - https://young0105.tistory.com/159 #  프로토타입 패턴 (Prototype)  - 원본 객체를 새로운 ..
[JSP] RequestDispatcher
·
Java/JSP
RequestDispatcher  - JSP와 Servlet 사이에서 request와 response를 전달하는 기능을 제공      · Servlet에서 JSP로 or JSP에서 Servlet으로      · 데이터를 공유하면서 같이 사용할 수 있음   - 사용 목적      · 웹 애플리케이션의 모듈화      · 재사용성 향상   - 요청 주소는 여전히 기존 주소로 유지됨  (비교 : sendRedirect 메서드는 주소도 바뀜)      → 클라이언트는 전달받은 Servlet or JSP의 정확한 주소를 알지 못함      → 보안 good #  방식 1) forward() 메서드 사용  - 서버 내부에서만 작동함  - request와 response를 그대로 넘김  1234567891011121..
[JSP] 쿠키와 세션
·
Java/JSP
#  관련 포스팅  - 쿠키와 세션 개념 : https://young0105.tistory.com/160 쿠키 (Cookie)  - 쿠키(Cookie)는 JSP 내장 객체가 아니므로, 생성자로 생성해서 사용해야 함  - 서버에 최초로 접근하는 사용자에게는 addCookies 메서드를 사용해서 쿠키를 생성해 보냄  - 사용자가 서버에 다시 요청할 때, getCookies 메서드를 이용해서 쿠키 정보를 확인함  - setMaxAge 메서드를 이용해서 쿠키의 유효 시간을 설정할 수 있음 1234567891011121314151617181920212223242526272829// 쿠키 생성 및 삭제 // // form 태그에서 넘어..
[JSP] JSP 내장 객체 3 (exception) & 에러 페이지
·
Java/JSP
exception 객체  - JSP 페이지에서 발생한 예외 정보를 다루는 객체 1234// jsp 파일  // 에러 발생 시 관련 메시지를 보여줌exception.getMessage();cs" data-ke-type="html">HTML 삽입미리보기할 수 없는 소스    - 에러 메시지에는 코드 내용이 포함되기 때문에 에러 메시지는 거의 띄우지 않음      → 보안 상의 이유 때문에 사용자에게 코드를 보여주지 않는 것이 좋기 때문임   에러 발생 시, 에러 전용 페이지로 이동시키기123456789<!-- 에러 발생 시 이동시킬 jsp 파일 상단부&..
[JSP] web.xml 파일 & JSP 내장 객체 2 (config, application)
·
Java/JSP
web.xml 파일  - Java 웹 애플리케이션에서 사용하는 배치 지시자 파일  - 웹 애플리케이션이 서버에 배포되는 시점의 설정 정보를 담고 있는 XML 파일  - 기본 설정을 하나의 프로젝트마다 재정의할 수 있음  - 웹 서버가 시작될 때 단 한 번만 로딩됨      → 서버가 시작된 후에는 수정해도 수정 사항이 적용되지 않음      → 설정을 변경하려면 해당 애플리케이션을 다시 배포해야 함   ▶ welcome-file      : 처음 서버에 접속했을 때 표시하는 파일      · 순서대로 확인해서 가장 처음 발견된 파일을 표시함     · 파일 경로를 포함하지 않고 root context(프로젝트명)까지만 작성해도 그 파일로 들어가짐 12345678  <welcome-..