1. eclipse 설치

eclipse는 이미 설치되어 있어서 따로 설치할 필요 없었습니다.

perspective는 Java EE로 설정했습니다.

Java는 Java프로그래밍을 할때, JavaEE는 Java로 웹 어플리케이션을 만들때 더 유용한 perspective입니다.

 

2. Tomcat 설치

Apache Tomecat이란??

아파치 톰캣은 아파치 소프트웨어 재단에서 개발한 세계에서 가장 많이 사용되는 WAS(Web Application Server)입니다.

 

자바를 이용하여 작성되는 웹 어플리케이션은 WAS가 있어야만 실행할 수 있습니다.

 

톰캣은 처음 사용해보는거라 다운 및 설치 과정을 적어보겠습니다.

 

http://tomcat.apache.org로 이동한 후 "Tomcat 8"을 선택합니다.

Tomcat 8버전은 JDK 7이상에서 동작하며 Servlet Spec 3.1을 지원합니다.

Tomcat 9버전은 JDK 8이상에서 동작하며 Servlet Spec 4.0을 지원합니다.

 

zip 파일을 다운 후, 압축을 해제하여 파일을 엽니다.

다운받은 파일이 이렇게 생성되어 있습니다. 이중, bin파일을 클릭합니다.

저는 window라 window버전으로 진행해 보겠습니다.

 

startup.bat파일을 실행시켜 줍니다.

 

그럼 cmd창이 띄워지고 뭔가 촤라라라락 실행됩니다.

우리가 할 것은 잠시 기다린 후, 새로운 브라우저를 켜고

주소창에 http://localhost:8080 나 http://127.0.0.1:8080를 입력해 들어가보는 것입니다.

 

만약 잘 동작한다면,

다음과 같은 창이 띄워집니다.

 

Tomcat을 종료하려면, 다시 bin폴더로 들어가서 shutdown.bat을 더블클릭합니다.

종료후 다시 위의 주소로 들어가면 "사이트에 연결할 수 없음"오류가 뜹니다.

 

저는 8080포트 서버에 접속할 때,

다음과 같은 오류가 발생 했습니다.

 

 

https://monny.tistory.com/42

위의 티스토리에 오류 해결과정이 자세이 나와있어서 참고해서 오류를 수정했습니다.

 

 

05_browser에서의 웹 개발

개발자 도구를 열어서 newtwork확인

<script>태그 - Javascript코드

<meta>태그 - 어떤 형식의 문서인지

## html과 css코드가 예측하기 어려운 곳에 배치!! script태그도!

 

# javascript코드는 body태그 아래에 넣어주는게 좋다(프론트 로딩이 지연됨 방지)

 

 

06_웹서버

웹서버의 역할 : 클라이언트가 요청하는 HTML문서나 각종 resource를 전달

    - 리소스는 정적인 데이터나 동적인 결과가 될 수 있다.

 

웹 크롤러란?

    - 웹 사이트 정보를 읽어오는 것에 사용되는것

 

Rendering이란?

    - 웹 서버가 html문서와 여러 응답을 한데 모아서 웹 페이지로 보여지게 하는 것

 

웹 서버 소프트웨어의 종류

  • Apache : 오픈 소스 sw. 거의 대부분의 운영체제에서 사용 가능
  • Nginx : 더 적은 자원으로 빠르게 데이터를 서비스 하는것을 목적으로 만들어짐. 차세대 웹서버로 불림
  • Microsoft

07_WAS(Web Application Server)

client / server구조

Client는 서비스를 제공하는 Server에게 정보를 요청하여 응답받은 결과를 사용합니다.

DBMS(database management system)

다수의 사용자들이 데이터베이스 내의 데이터를 접근할 수 있도록 해주는 소프트웨어

즉, 데이터베이스를 관리하는 소프트웨어입니다.

대표적인 제품 : MySQL, oracle...

단점 : DBMS에 클라이언트가 직접 접근하여 동작하는 방식에 문제가 있음

해결 : MiddleWare

 

MiddleWare

클라이언트와 DB사이에 또 다른 서버를 두는 방식입니다.

클라이언트는 middleWare 서버에게 요청을 보냅니다. 그럼 대부분의 로직은 MiddleWare 서버에서 처리하고, 

데이터를 조작할 일이 있으면 DB에게 부탁을 하고 결과를 클라이언트에게 보냅니다.

클라이언트는 복잡한 로직처리를 모두 서버에 맡기고 요청을 보내 결과만 출력하면 되게 됩니다.

이렇게 되면, 비즈니스 로직이 바뀌더라도 모든 클라이언트를 다시 배포할 필요없이 미들웨어 로직만 바꾸면 되게 됩니다.

WAS(Web Application Server)

웹의 역사가 길어질수록 사용자들의 요구가 많아졌습니다.

동적인 웹의 수요가 생긴것입니다. 

이런 웹의 경우, 브라우저에서 DBMS를 건드리는 경우가 많습니다.

브라우저를 클라이언트로 본다면, 브라우저와 DBMS사이에서 동작하는 미들웨어가 필요하게 되었습니다.

이 미들웨어가 WAS입니다.

 

! WAS의 주요기능 3가지 !

  • 프로그램 실행 환경과 DB접속 기능의 제공
  • 여러개의 트랜잭션을 관리
  • 업무를 처리하는 비즈니스 로직의 처리

WAS는 웹서버의 기능도 기본적으로 제공합니다!!!

이번 부스트코스 웹과정에서는 Apache등의 서버를 설치하지 않고, TomCat만 설치해서 사용합니다.

 

웹 서버 vs WAS

웹 서버는 보통 정적인 콘텐츠를 웹 브라우저에게 전송합니다.

WAS는 동적인 결과를 브라우저에 전달합니다.

WAS도 자체 웹 서버 기능을 내장하고 있어서 웹서버와 WAS를 따로 설치할 필요는 없지만,

규모가 큰 서비스일수록 이 둘을 분리합니다

 

+ Recent posts