웹 브라우저(clients)와 웹 서버 사이에서 단순히 HTML파일로만 주고 받는것은 정적인 static이다.
하지만 여기에서 Data Base를 기반으로 웹 페이지를 구축할 수 있는데, 이 때 웹 서버와 데이터베이스 사이에서 사용되는 것들 중 하나가 오늘 알아보려고 하는 JSP(JavaServer Pages)이다.
JSP는 HTML 코드에 JAVA 코드를 넣어 동적인 웹페이지를 생성하게 해주는 Web Application 도구이다.
Client로부터 요청이 들어오면,
먼저 .jsp파일을 해독해 java 코드 부분을 확인 -> compile -> class 로딩 및 실행 -> 그 결과를 HTML 페이지에 결합 -> 다시 client로 전송 의 과정을 거친다.
그리고 JSP의 서버환경을 구축하기 위한 Tool로 세 가지가 있다.
- Java 개발도구 - OpenJDK or Oracle Java JDK(점점 유료화 되어가고 있기 때문에, OpenJDK를 사용할 예정)
- 웹 어플리케이션 서버 - Tomcat
- 통합개발환경(IDE) - STS(Spring Tool Suite) or Eclipse
1. OpenJDK 설치하기
OpenJDK의 배포 버전으로 여러 가지가 있는데, Amazon Corretto 를 사용했다.
여기서 아랫쪽 11을 다운로드 받았다.
다운로드를 받은 후 Mac 사용자들은 환경변수 설정으로 실행경로를 추가해주어야 한다. (이 때, OpenJDK를 설치하는 컴퓨터에 Java가 설치되어있어야 한다.)
- 환경변수 설정
- 터미널에서 cd /Library/Java/JavaVirtualMachines/amazon-corretto-11.jdk/Contents/Home 입력해서 현재 위치 이동
- vi ~/. bash_profile 입력
- i 입력해서 수정모드
- 아래의 사진에 있는 두 줄을 입력 후 esc키 누르기 -> :wq입력 후 엔터export
- source ~/.bash_profile 입력 하면 설정 완료.
그리고 echo $PATH 명령어를 입력 후 위와 같은 결과가 나온다면 정상적으로 path설정이 완료된 것이다.
java --version 으로 다시 한번 설치 확인 완료. java 최신 버전인 15로 설치되어있다는 것을 볼 수 있다.
2. Tomcat 설치하기
: ASF(Apache Software Foundation)에서 개발한 웹 어플리케이션 서버 (WAS)
jsp로 개발되는 웹 사이트 구동 엔진
tomcat.apache.org/download-90.cgi
- 로컬 컴퓨터에 Tomcat 설치
- 압축파일을 적절한 곳에 풀어준다.
- 경로확인 (나중에 STS4에 등록해야 한다)
- Tomcat 실행 테스트
- bin 디렉토리의 시작 스크립트 실행
- WINDOWS-startup.bat
- Mac, Linux-startup.sh
- 터미널에서 Tomcat/bin으로 이동한 후 ./startup.sh 입력
- 이 때 나는 permission denied 오류가 발생했다. "zhs: permission denied: ./startup.sh"
- 해당 파일의 실행을 허용시켜주기 위해 sudo 권한을 주면 된다
- 처음에 chmod +x ./startup.sh를 했는데도 똑같은 에러가 나서 /bin 도 해봤지만 또 에러가 났다. 이 때 엉뚱하게? "Cannot find ./catalina.sh The file is absent or does not have execute permission This file is needed to run this program" 이라는 다른 에러가 나서 이 파일에 대해서도 권한을 줬더니 이제야 startup.sh 파일 실행이 되었다.
- 웹 브라우저에서 localhost:8080 을 입력했을 때, Tomcat의 웹 페이지가 뜨면 정상적으로 설치 완료된 것이다.
- ./shutdown.sh를 입력하면 톰캣 종료
- bin 디렉토리의 시작 스크립트 실행
3. Spring Tool Suite 4
: provides world-class support for developing Spring-based enterprise applications
- STS4 다운로드 후 압축해제
- Spring Tools 3 Add-On for Spring Tools 4 설치
- STS4를 실행 후 상단 메뉴바에서 'Help' -> Eclipse marketplace -> 'Spring' 검색 후 찾아서 설치
- WINDOWS 10 사용자의 경우, encoding 변경해주기 (utf-8로 변경)
- 메뉴바에서 'Window' -> preference
- Server runtime에 Tomcat9 추가
- Window->Preference -> Server -> Runtime Environment
위에서 다운로드한 tomcat 폴더를 찾아서 선택하면 된다.
여기에 추가로, 사용자가 지정한 단축키로 자동완성 기능을 사용할 수 있다.
기본적으로 crtl+space로 저장되어 있는데, binding 부분에서 자신이 원하는대로 변경하면 된다.
또한, 폰트/태마 등을 설정할 수 있다.
위와 같은 general에서 가장 윗부분에 있는 appearence를 클릭해서 테마, 폰트, 색상 등을 변경할 수 있다.
이렇게 모든 기본적인 설치는 끝났기 때문에, 이제 프로젝트를 생성해본다.
- Dynamic Web Project 생성
- File->New->Others->Web->Dynamic Web Project
- HTML 파일 생성
- WebContent에서 index.html 생성
이렇게 모든 JSP 환경설정 구축이 완료되었다!
간단하게 JSP Scripting Elements들을 살펴보자.
jsp 파일 안에 java code를 입력할수 있는 방법은 크게 세 가지가 있다.
첫번째, scriptlet tag
여기서는 변수만 선언 가능하다.
두번째, expression tag
한 줄로 간단하게 표현할 때 사용된다.
세번째, declaration tag
변수 method를 선언해서 사용할 수 있다.
또한 JSP Implicit Objects들이 있다.
web container(tomcat)에 필요할 때 마다 자동으로 만들어진다.
몇 가지 자주 사용되는 것들만 정리해보았다.
객체명 | 타입 | 설명 |
out | JspWriter | JSP 페이지에서 데이터 출력이 사용되는 스트림 객체 |
request | HttpServletRequest | 웹 브라우저로부터 전달된 request 정보를 저장하는 객체 |
response | HttpServletResponse | 웹 브라우저로 전송할 response 정보를 저장하기 위한 객체 |
session | HttpSession | 웹 브라우저<->웹 서버간 세션 정보를 저장하는 객체 |
'Study > Web' 카테고리의 다른 글
JSP CRUD 게시판 만들기 - 2 (2) | 2020.10.19 |
---|---|
JSP CRUD 게시판 만들기 (0) | 2020.10.12 |
Node.js (3) - URL의 이해 (0) | 2020.08.31 |
Node.js (2) - 웹 서버 만들기 (0) | 2020.08.26 |
Node.js (1) - 시작 (설치하기) (0) | 2020.08.25 |