티스토리 뷰

Web/javascript & jQuery

[#1] web

구글링쟁이 k9e4h 2016.03.18 20:30

 

web 지원하는 bean file -> servlet ->를 확장한 jsp

tomcat 설치한 이유->servlet jsp를 관리하고 실행하는 servlet container(engine)가 필요 // 우리가 쓰는 was( web application server, servlet & jsp container web server를 가지고있는)의 이름 : 탐캣

-> jsp servlet은 빈이므로 실행할 수없다 bean을 관리하고 실행하는 contaier가 필요하다.

웹서버=html container

url : ip+port까지

uri : 물리적인컴퓨터정보 ㄴㄴ / identify

uri 길어져서 관리하기가 힘들어짐 ->

현업에서는 url안씀, html을 키면 브라우저는 그 html이 어디서 왔는지 이미 알고있기때문에 uri만 하면됨, 특정 ip에 종속적이지 않기위해서

 

relative URI : servlet directory 종속적이지 않게하기위해서, 상대경로

 

servlet : html io로 전송

jsp : html io로 전송  (php&asp : request가 오면 html resopnd하는 기술)

java.servlet.http : html display로 보여주는

servlet, jsp : html 전송을 표준화한 기술 ( JDBC -> db 전송을 표준화한 기술)

 

* servlet lifecycle

client 요청하면 WAS thred를 생성

쓰레드가 inith메서드, service 메서드 호출후 respond해주고 죽음 / one-request one-쓰레드

다른 middleware one-request one-respond

 

*se /ee

cs(client.server)-> ee : jdbc 등등..

local에서 도는 것->se

 

.jar : 자바아카이브, 빈의 압축폴더

.war :웹아카이브,표준화된 폴더구조의 압축

 

웹이뜨는이유 : client app를 개발할 필요가없다(비용절감,편리)

apache liscence  : 가져가서 써도된다, but 아파치를 사용했다는 것을 명시해라

back-end : 서버에서 실행하는 것

front-end : 브라우저에서 실행하는것

middleware : was / 요청에 따라 왔다갔다하는것

배치기술서 : web.xml  : web application 환경파일(deployment descriptor)

* web.xml

tag = element

 

<servlet>

<servlet-name>FirstServlet</servlet-name>

<servlet-class>FirstServlet</servlet-class> // 이름을 가진 class?

</servlet>

 

<servlet-mapping>

<servlet-name>FirstServlet</servlet-name> // parttern 대응하는 name

<url-pattern>/FirstServlet</url-pattern>

</servlet-mapping>

 

* http에서 서버로 데이터보내는 방식(request 방식)

가시적인 보안을 요구하면 post( 아이디등 정보)& 보내야할 정보가 많으면, 보안필요없으면 get방식( 링크,검색,게시판)

 

 

 

<<client id pass request로 전달 id password server에서 받는 client form file처리>>

3 tear application : 컴퓨터 3대로 하는 것, client 고급이아니여도됨( 브라우저만있으면되, tihn client) -> 유지관리가 좋다

2 tear application : client 컴퓨터가 좋고, server에는 db만 존재, fat client( 사양이 좋은 클라이언트 )

크롬북

 

eclipse perspective 투영도 : 관련된 어플리케이션들 ㅗ여줌

 

presentation : client 대화를 주고받음 -> servlet

businessLogic(업무순서) 내정보수정의 businesslogic select->update이다 / 데이터의조작 -> Bean( JDBC )

 

* session cookie (상태유지를 위해 필요한 기술)

 

세션:망 환경에서 사용자 간 또는 컴퓨터 간의 대화를 위한 논리적 연결, 서버와 클라이언트가 서로 지속적으로 데이터를 교환하기 위해서 필요

프로세스들 사이에 통신을 수행하기 위해서 메시지 교환을 통해 '서로를 인식한 이후로부터 통신을 마칠 때 까지의 기간'

'서로를 인식' : 보통 로그인 과정을 의미합니다. 서버 측에서는 클라이언트가 접속을 하면 이 사람이 어떤 권한을 가진 사람인지

 

모르기 때문에 먼저 서버 DB 안에 있는 사용자 ID와 비밀번호와 비교를 한 뒤에 그 사람의 권한을 부여해야겠죠.

 

이렇게 해서 그 사용자가 서버에 접속을 하면 그 사람이 로그아웃 하기 전까지 바로 그 '세션(Session)'이 유지

그러한 과정에서 바로 세션 키를 부여합니다.

 

처음에 REQUEST 1은 서버에게 홈페이지를 보여달라는 의미입니다. 바로 처음 서버에 접속을 한 것이죠.

 

이렇게 되면 서버는 그 접속한 사람에게 세션 ID를 부여해서 쿠키를 설정합니다.

접속한 사람은 저 세션으로서 식별

 세션이 부과된 이후로는 그 클라이언트는 서버에게 무언가를 요구할 때 반드시 뒤에 부여받았던 세션을 붙입니다.

서버와 클라이언트가 대화를 할 때 요청(Request)과 응답(Response)를 주고 받으면서 대화를 진행합니다.

 

web 가장 큰 장점 : client server req하면 server res하자마자 연결을 끊는다 -> 서버에 부하가없다. ( 무전기 )

다른 cs는 연결을끊지않는다. sqlplus -> 한번 select했다고 users테이블과의 연결이 끊기는게 아니다.( 핸드폰통화 )

장점이지만 그래서 cookie & session을 통해 상태유지가 필요하다.

 

 

DTO : Data Transfer Object 레이어간의 정보전달 담당

 

실질적으로 개발할때 war 서버에 얹는용도로만 사용, 공유할때는 폴더구조로

 

 

 

EL( element language)

 

OGNL(Object Graph Nabigation Language)

'Web > javascript & jQuery' 카테고리의 다른 글

JavaScript 찔끔  (0) 2016.04.21
jQuery 찔끔  (0) 2016.04.12
[#4] Canvas & Animation  (0) 2016.04.12
Pluginslick  (0) 2016.04.05
Bootstrap  (0) 2016.03.31
[#1] web  (0) 2016.03.18
댓글
댓글쓰기 폼