728x90

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에서 이름 약속걸었으니까)


cf) 콘솔, 파일, 다른pc

4. 이제는 웹으로~!!!!!

728x90

+ Recent posts