1. 목표
로그인, 회원가입, 게시판 기능 구현하기
2. 환경설정
JDK - 17버전 --> 환경변수 설정 다시 해줌
톰캣 - 9.0버전
이클립스 - Java EE Developers
이클립스 실행 후, Dynamic Web Project로 프로젝트를 생성한다.
Tomcat 설정이 안되어있으면 New Runtime을 눌러서 설치했던 톰캣인 v9.0을 선택한다.
Target runtime에 Apache Tomcat v9.0을 연결시킨다.
jsp 파일은 webapp하위에 생성한다.
3. 개념 이해
JSP(Java Server Pages)에 대하여
JSP는 언어라기 보단 서버사이드에서 실행되는 스크립트 기술이다.
HTML내에 Java 코드를 삽입하여 웹 페이지를 동적으로 생성할 수 있는 방법을 제공한다.
✔️webapp 하위에 jsp 파일을 생성하는 이유
webapp 디렉토리는 웹 애플리케이션의 루트 디렉토리다.
클라이언트(사용자)는 웹 브라우저를 통해 이 디렉토리 아래에 위치한 JSP파일에 직접 접근할 수 있다.
WEB-INF 디렉토리에 jsp파일을 넣게 되면 직접 접근이 안된다.
왜냐하면, 이 디렉토리에 있는 파일들은 중요한 설정파일이 있기때문에 보호해야하기 때문이다.
(ex. web.xml, 라이브러리 jar파일 등)
✔️스프링을 배우기 전 JSP를 배우는 이유
- JSP를 통해 서버사이드에서 HTML을 동적으로 생성하는 법을 이해할 수 있다.
- JSP로 View를 구현하면서 MVC 패턴의 View부분을 다루게 된다.
- 자바 웹 애플리케이션의 작동 방식을 이해할 수 있다.
✔️DAO, DTO란?
-DAO는 Data Access Object의 약자로, 데이터베이스에 접근하는 객체다.
데이터베이스의 CRUD 연산을 수행하는 메서드를 제공한다.
-DTO는 Data Transfer Object의 약자로, 계층 간 데이터 교환을 위해 사용하는 객체다.
DTO는 로직을 포함하지 않는 순수한 데이터 객체로 데이터베이스에서 데이터를 읽어 컨트롤러 또는 서비스 계층으로 전달할 때 사용한다.
✔️포워드(Forward) 와 리다이렉트(Redirect)
- forward
서버 내부에서만 처리클라이언트는 URL 변경을 인지할 수 없다.(URL이 변경되지 않는다)
원래의 요청 정보와 객체는 포워딩된 페이지까지 유지한다.
💡처리 결과를 바로 다음 페이지에 전달해야 할 때 유용하다.ex) 회원가입 폼 제출 후 가입 성공 페이지 보여주기
- redirect
클라이언트를 통해 새로운 페이지를 요청함
URL이 변경된다
원래 요청정보는 새로운 요청으로 전달되지 않는다.
💡처리 후 브라우저 새로고침이나 다시 접근 시 중복 작업을 방지해야할 때 유용하다.
ex)블로그 포스트 작성(중복제출방지)
'프로그래밍 언어 > Java' 카테고리의 다른 글
[JSP] 게시판 만들기 | 3편.로그인 기능 구현하기 (0) | 2024.02.07 |
---|---|
[JSP] 게시판 만들기 | 2편.데이터베이스 설치 및 연동 (1) | 2024.02.07 |
[Java]Socket을 활용한 간단한 클라이언트-서버 통신 (1) | 2023.12.28 |
[과제] 경마게임 만들기 | Thread 활용 (1) | 2023.12.20 |
[Java] 제네릭(generic)의 개념과 활용법 (1) | 2023.12.19 |