본문 바로가기
국비학원 전 강의 필사/PHP로 수정해야 함

#1 JSP 이론1 - <JSP 기초~활용>

by kkooHan 2022. 8. 14.

 

출처 : https://www.youtube.com/user/perpear1

 

코딩형

프로그래밍을 배우시는 분들에게 도움 1이라도 되고 싶은 마음으로 강의를 합니다. 물어보시는 분들이 많아서 아래와 같이 말씀드리겠습니다. 혹시 강의를 들으시면서 저한테 문의할 사항이나

www.youtube.com

 

 

 

 

 

 

필사 :

 

빅데이터와 관련된 내용이다.

 

강의를 듣고 나면 기본적인 웹사이트를 DB와 연동할 줄 알게 될 것이고

기본적인 사이트를 만들 수 있게 된다.

 

1. 웹과 JSP 프로그래밍 이해하기

인터넷과 웹의 개요

 - 인터넷 :

   컴퓨터가 서로 연결되어 TCP/IP라는 통신 프로토콜(규약)을 이용하여

   정보를 주고받는 전세계의 컴퓨터 네트워크

 - 웹 : 

   인터넷에 연결된 컴퓨터들을 통해 사람들이 정보를 공유할 수 있는 정보 공간.

   월드 와이드 웹(world wide web)의 줄임말.

 

인터넷의 예 : 이메일, 웹, 파일 송수신(FTP), 웹넷(Telnet), POP 등

 

TCP/IP를 이용해 로컬에 서버를 깔고,

프로그래밍한 JSP파일 혹은 서블릿?파일 혹은 HTML파일과 연동을 한다.

그 안에는 부수적으로 CSS, JS를 쓸 수 있다.

 

 

 

웹의 동작 원리

 - 웹은 기본적으로 클라이언트/서버 방식으로 동작

 - 가장 널리 쓰이는 웹 서버

   아파치(Apache), 톰캣(Tomcat), IIS(Internet Information Server)

 

 

서버는 리눅스로 되어있는 경우가 많다.

윈도우로 쓰는 회사도 있다.

 

 

정적 웹 페이지와 동적 웹 페이지

 - 정적 웹 페이지

   컴퓨터에 저장된 텍스트 파일을 그대로 보는 것

   HTML(HyperText Markup Language) -> 정적

 - 동적 웹 페이지

   저장된 내용을 다른 변수로 가공 처리하여 보는 것

   PHP(Personal Home Page), ASP(Active Server Page), JSP -> 서버 스크립트 언어

   (HTML, JS, Jquery, CSS 등 -> 클라이언트 스크립트 언어)

 

   JavaServerPage -> 보안에 강하다.

 

 

request, response

 

HTTP 프로토콜 -> 특징 : 클라이언트 요청에 맞게끔 응답하고 끊어버린다.

 

서버는 클라이언트의 요청에 응답을 하는데 HTTP는 HTML 코드로 응답을 한다.

 

JSP의 기본적인 툴은 HTML로 되어 있지만 Text가 JAVA로 되어있고, 자바 코드를 삽입할 수 있다.

 

 

 

정적 웹 페이지의 동작 방식

클라이언트 (웹 브라우저가 HTML 보여줌) <-> 서버 (웹서버가 .html 파일 검색, 동작하고 끊어버림)

 

동적 웹 페이지의 동작 방식

클라이언트 (웹 브라우저가 HTML 보여줌) <-> 서버 (요청을 분석하여 처리, 결과를 HTML 문서로 작성)

 

 

정부사이트 -> 확장자 : .do -> 확장자 패턴

PHP사이트 -> 확장자 : ?j=16 -> 갭 방식

파일 확장자가 아무것도 안나오는 것은 전부 다 포스트 방식으로 던지는 것이다.

 

 

프론트 컨트롤러 패턴 -> 앞에서 다 받아서 해당 화면으로 보여줌

 

 

소스보기를 하면 모두 HTML으로 보여준다.

JSP, ASP, PHP 등의 코드는 안 보여준다 -> 밥줄.

 

 

웹 프로그래밍과 PHP

 - 웹 프로그래밍 언어

   클라이언트 측 실행 언어와 서버 측 실행 언어로 구분

   자바를 기반으로 하는 JSP는 서버 측 웹 프로그래밍 언어 중 하나

 

 - JSP의 특징 

   JSP는 서블릿 기술의 확장입니다. -> 서블릿 : .java     

       PrintWriter 한계로 인해 JSP 등장.   JS,JAVA,HTML, 스타일 등 다양한 기능 가능한 것이 JSP.

   JSP는 유지 관리가 용이하다.

   JSP는 빠른 개발이 가능하다

      컨테이너가 있어서 자바코드도 넣을 수 있어 빠른 개발이 가능. but JSP하나로 독단적으로 개발할 수 없다.

       HTML, JS, 부트스트랩 코드, CSS, JQuery, ajax, JSON도 알아야 한다.

   JSP로 개발하면 코드 길이를 줄일 수 있다.

       이유는 강의를 통해 서블릿과 JSP의 차이를 느낄 수 있고 알 수 있게 된다.

 

 

 

1. 리퀘스트

2. .jsp  /  JSP 컨테이너 = 톰캣 서버

3. JAVA로 바뀜.

4. 컴파일을 통해 class 파일로 만들고 메모리에 올려버린다.

 

서블릿은 원래 자바 파일이기 때문에

번역(인터프리트) 과정을 거치지 않는다.

 

서블릿은 인터프리트 과정을 거치지 않기 때문에 더 빠르긴 하나

복잡한 과정에는 적합하지 않다.

 

로딩되고 메모리에 올라가 있으면

클라이언트가 끊을 때 까지 살아있다.

상주를 시킨 상황에서 또 다른 사용자가 요청하면 재활용 한다.

스레드 풀.

 

 

서버가 다운 될 때 소멸된다.

 

 

 

2. JSP 개발 환경 구축하기

JSP 개발 환경 도구

 - 자바 개발 환경 : JDK

 - 웹서버 : 톰캣

 - 통합 개발 환경 : 이클립스

 

 

자바 설치하고 환경 설정하기

 - 자바 개발 키드

  JDK(Java Development Kit)

 - 자바 실행 환경

  JRE(Java Runtime Environment)

 

JDK 설치하기

 

 1. 오라클 사이트에 접속하기

 http://www.oracle.com/kr/java

 

 2. JDK 선택하기

 

 3. 라이선스 동의 및 운영체제 버전에 맞는 설치 파일 선택

 

 

이제 웹 서버를 만들어야 한다.

 

서버 C 드라이브에 다운받고

이클립스에 등록을 해서 테스트하면 된다.

 

 

이클립스 바로가기 -> 자바가 안 붙어 있으면

se버전으로 깔아야 되는 것이 자바.

dynamic 웹 프로젝트를 만드려면 E버전을 깔아야 된다.

 

 

맨 위에 것을 깔면 자바로 나오고 -> 지금까지 자바 배울 때 썼던 것.

두번째 것을 깔면 JSP를 할 수 있는 버전이 된다. -> 이걸 깔면 메이븐이라든지 턴이라든지 플러그인 이용 가능.

자바는 밑에 콘솔 밖에 없었지만

EE로 깔면 서버가 있다. 서버 부분이 있으면 잘못 깔린 것이다.

 

톰캣을 이용할 것이다.

등록하면 서버가 등록이 된다.

 

 

 

 

 

 

느낀점 : 

 

어렵다.

순서가 빠르긴 하다.

얼른 공부하고 가야겠다.

 

궁금한게 여기서 배우는 게 국비학원에서도 똑같이 하는 걸까?

학원에서는 클라우드로 한다고 했는데.

 

+ 큰일날 뻔 했다.내가 신청한 국비과정은 PHP, 라라벨 프레임 워크 강좌였다.국비학원 관련 유튜브 영상을 보다가 JSP 꼭 보고 가야지 진도 안 뒤쳐진다길래 보다가앞 부분에 PHP가 나오길래 뭐지? 하면서 알아보다가 발견...

 

앞부분에 PHP에 대해서 다뤄주셔서 다행히 삽질 안 할 수 있었다. 감사합니다.

댓글