우주 최강의 질 좋은 강의를 제공해 주신 newlecture 나나짱님께 감사드립니다.
https://www.youtube.com/watch?v=jp7vtbLin-s&list=PLq8wAnVUcTFVOtENMsujSgtv2TOsMy8zd&index=8
강의록 갑니다~!
[1강] 학습 안내
serlvet, jsp, jsp mvc 패턴까지, 그 다음은 spring mvc 패턴까지
[2강] 웹 서버 프로그램이란
옛날 웹을 이용하지 않는 시절에는, CS(클라서버)간 데이터를 동기화하는게 번잡스러웠다,
(클라이언트 프로그램 업뎃의 어려움(재설치)) 데이터 전송 구현의 어려움
그러나 웹브라우저와 page 개념을 이용하면서 용이해졋다
[3강] 웹서버 프로그램과 Servlet
클라에서 {url}/member/list 요청을 하면 이에 대한 문서를 만들어 줘야함
서버는 코드만 가지구 잇어, 이것을 문서화해야함. 코드를 실행할 환경이 추가적으로 필요한 거지.
그게 WAS야. (웹 애플리케이션 서버). 코드 Server App
실행환경(Web Server + WAS)
Servlet 뜻 추측
클라 GET: list/reg/edit/del (RCUD)
서버 에서 그에 대한 파편화된 응답을 해줌
서버 코드(앱)이 조각낫다. Server Application Let => Servlet
[4강] 톰캣 9 설치하기 1/3 : Web Server + WAS
개발/공부 목적 zip
본격적으로 서비스 돌릴 목적 Service Installer : 서비스 목록에 등록이 됨
정상적으로 설치돼잇는지 보려면, startup.bat 누르고 그대로 떠 잇는지를 확인한다.
안돼면 JDK (JAVA_HOME 환경변수)
JAVA라는 JDK를 필요로하는 앱들이 잇는데, 대표적으로 톰캣이 그러함,
어디에 설치돼 잇는지 알아야 하기 때문에, (사용자마다 설치하는 곳이 다를 수 잇다)
이클립스 등의 IDE에서 톰캣이 동작하고 있는 경우! => 포트번호가 충돌이 남
me) (카탈리나는 톰캣의 프로젝트 이름)
me. web server와 was의 차이
본래는 web server만 잇엇다 다만 얘는 html, css등의 응답만 해줌..
데이터를 동적으로 가공할 서버가 필요함 이게 was
was는 jsp등 동적인 페이지를 생성할 수 잇다
다시 정의하면
WAS : 웹서버(정적인 페이지는 여기서 처리해) + 웹 컨테이너(jsp, servlet 등 실행시킬 수 잇는 소프트웨어)
비즈니스 로직 수행 가능, db접속 기능 제공
동적인 페이지 생성
웹서버: 아파치
WAS: 톰캣 제우스
차이: 상황에 따라 변하는 정보를 제공할 수 있는가
[5강] 톰캣 9 설치하기 2/3 : 웹 문서 추가해 보기
톰캣? WAS + 자바앱을 개발할때 사용하는 웹 서비스 기능 포함(Web Server : 웹문서를 제공하는 서비스)
서버입장 문서를 보관하는 곳 : 홈 디렉터리 (톰캣/webapps/ROOT)
클라입장 문서 주세여 하는 법 : http://localhost:8080/nenechimak.txt
(인코딩을 ANSI로 하면 안 깨짐!)
공인 ip라면 ip:8080/nene.txt
대부분은 공유기의 사설 ip를 쓸 거야
localhost:8080
뒤에 index.jsp는 생략할 수 잇어, 기본문서이기 때문에
핸폰에서도 접근 가능해, 혹시 안돼면 방화벽 문제일 수 있어
아웃바운드:외부로 나가는 규칙
[6강] 톰캣 9 설치하기 3/3 : Context 사이트 추가하기
예를들어 생코등 사이트에서 컨텐츠별로 사람들이 각자 만든다고 하면
html이랑 java 등 컨텐츠별로 사람들이 관여하지 않게 만든다.
각 디렉터리별로 새로운 root 디렉터리화 해서 사용자에게 다시 준다.
{url}/it/news.txt
만일 다른 부서에게 맡기고 싶다면,
우선 저 폴더를 아무데나 옮겨놔!
server.xml의 host에
context 태그 추가하여, 가상의 it 경로와 물리 경로와 매핑,
그러나 이 방식은 지양해야한다구 한다. 서버쪽 설정을 바꾸엇기 땜에 서버를 재시작해야 한다
각 앱 마다 메타 인포에 context 마련 가능. 나중에
servver.xml
서블릿/JSP 강의 07 - 처음으로 서블릿 프로그램 만들어보기
서블릿은 톰캣의 추상클래스인 HttpServlet로부터 상속받아 만들 수 있다.
이때 메소드나 이런 것들은 정해져 잇다.
메모장 jdk 톰캣만으로
서블릿 프로그램 만드는게 가능하다.
javac -classpath C:\IDEs\apache-tomcat-9.0.37\lib\servlet-api.jar Nana.java
javac -classpath C:\IDEs\apache-tomcat-9.0.37\lib\servlet-api.jar;C:\IDEs\apache-tomcat-9.0.37\lib\annotations-api.jar Nana.java
javac -classpath C:\IDEs\apache-tomcat-9.0.37\lib\servlet-api.jar;C:\IDEs\apache-tomcat-9.0.37\lib\annotations-api.jar;C:\IDEs\Java\jdk1.8.0_261\jre\lib\rt.jar Nana.java
서블릿 lib는 jdk 기본 내장되지 않은 lib야
서블릿/JSP 강의 08 - 서블릿 객체 생성과 실행 방법
web-inf
절대 사용자에 의해 요청될 수 있는 dir이 아냐
대신 url 매핑으로 연결 가능
사용자요청 -> url-pattern -> servlet-class
servlet-class => 패키지명잇으면
클라쪽이 아닌 서버쪽에 실행
서블릿/JSP 강의 09 - 서블릿(Servlet) 문자열 출력
전꺼는 서버 톰캣에 뜨는데 클라단 웹브라우저에 떠야해 요녀석아!!!!!
OutputStream os = response.getOutputStream();
파일, 콘솔, 네트워크든 스트림이라는 클래스를 사용
PrintStream out = new PrintStream(os, true);
그러나 bi, byte를 쓸것이 아니기 떄문에 위를 사용
출력버퍼 바로보내지 않고 8kb 적재하구 보내
함수써가지고 fflush
소스크드 고치고 컴파일 하고, 배포 다시해야하구 서버 재기동, 브라우저 주소 재입력
이래서 이클립스 쓰는게 쉽구나
문자열, 다국어를 쓰겠다, 그러면 스트림보다는 라이터를 쓰자꾸나
PrintWriter out = response.getWriter();
서블릿/JSP 강의 10 - 웹 개발을 위한 이클립스 IDE 준비하기
코드수정
컴파일
배포
톰캣 서버 재시작
브라우저로 요청
이래서 도구를 써야 해
run(ctrl+f11) 하나로 끝나.
컴파일, 문서관리, 실행하기 위한 내용/정보가 필요해
이를 위해 프로젝트를 생성한다.
'Back-end > 기타 (BE)' 카테고리의 다른 글
뉴렉쳐 Servlet & JSP [41 ~ 50강] (0) | 2020.10.03 |
---|---|
뉴렉쳐 Servlet & JSP [11~20강] (0) | 2020.10.03 |
뉴렉쳐 Servlet & JSP [31 ~ 40강] (2) | 2020.10.03 |
뉴렉쳐 Servlet & JSP [21~30강] (0) | 2020.10.01 |
뉴렉쳐 Servlet/JSP [11~20강] (0) | 2020.10.01 |
hi hello... World >< 가장 아름다운 하나의 해답이 존재한다
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!