html 정적으로 뿌려주기밖에 안되고 db에 연결하려면 동적으로 servlet 같은 구동환경 필요
<Servlet>
: 웹에서 실행하는 프로그램
: html in JAVA
: public static void main(String[] args) 메소드가 없다
: 주기함수(Life Cycle)
: 반드시 public 이어야한다.
: new X
: 서버안에 저장
* 웹어플리케이션(Web Application)
웹어플리케이션은 웹에서 실행되는 응용프로그램을 뜻하며 인터넷을 통한 은행업무, 인터넷쇼핑, 등등 인터넷에서 하는 여러 서비스를 총칭
하며 사용자가 필요한 요청(Request) 를 하고 서버에서는 이에 해당하는 요청을 수행하고 그리고 요청한 데이터를 응답(Response) 한다.
웹 어플리케이션이 위와 같이 동작하기 위한 몇가지 구성요소가 있다.
웹 브라우저(Web Browser) : 클라이언트에서 요청을 하고 전달받은 페이지를 볼수있는 환경을 말한다. ( 크롬, IE, Safari, Firefox 등.. )
웹 서버(Web Server) : 클라이언트로 부터 요청받아 서버에 저장된 리소스를 클라이언트 에게 전달한다. 주로 정적컨텐츠롤 담당한다.
웹 어플리케이션 서버 ( Web Application Server ) : 줄여서 was 라고도 부르며 서버단에서 필요한 기능을 수행하고 그결과를 웹서버에게 전달한다.
데이터베이스 : 서비스에 필요한 데이터를 보관, 갱신 등 관리를 한다.
* 자바 서블릿(Java Servlet)
서블릿이란 웹페이지를 동적으로 생성하기 위해 서버측 프로그램을 말한다.
이는 자바 언어를 기반으로 만들지며 웹 어플리케이션 서버 ( Web Application Sever ) 위에서 컴파일 되고 동작한다.
<주기함수(Life Cycle)>
init() : 맨처음에 1번만 호출 (init를 가장 먼저 찾는다) ↓ service() - doGet() : 클라이언트가 요청시마다 호출 - doPost() (service는 추상이라서 오버라이드) ↓ destroy() : 마지막에 1번 |
<service()>
1. get방식
: default
: 주소표시줄(Query String)를 통해서 이동
: 이동되는 데이터가 보인다
: 이동되는 데이터가 문자열만(String) 처리
2. post방식
: 클라이언트가 post로 요청 시에만 적용
: 내부적으로(페이지단위) 이동
: 이동되는 데이터가 안 보인다.
: 대량데이터
cf) 자바 main은 다 콘솔창에 띄우줌
서블릿은 브라우저에 띄워줌
<서블릿 처음 (프로젝트 만들 때 등)>
cf) 자바: 아무말없으면 무조건 object 상속 상태
1. 서버(톰캣)에 helloServlet 프로젝트를 올렸고(add and remove...)
2. 무조건 web.xml을 찾아서 읽는다.
3. web.xml에 서블릿을 등록해야 한다.
4. http://localhost:8080/helloServlet/com.hello.HelloServlet - X
http://localhost:8080/helloServlet/HelloServlet (web.xml에서 이름 약속걸었으니까)
4. 이제는 웹으로~!!!!!
'Servlet' 카테고리의 다른 글
210930(목) Servlet 5일차 - 주소 / id 중복체크 (0) | 2021.09.30 |
---|---|
210929(수) Servlet 4일차 - html(우편번호, 중복체크) → 서블릿 → DB (html에서 가져온 데이터를 DB로 보내기) (0) | 2021.09.29 |
210928(화) Servlet 3일차 - 회원가입 창 서블릿에 데이터 보내기 / 유효성검사 (제이쿼리도 연습) (0) | 2021.09.28 |
210927(월) Servlet 2일차 - 서블릿파일 xml연결 / html에서 서블릿으로 데이터 보내기 (0) | 2021.09.27 |