1장시작하기전에 웹프로그래밍전반적인환경을이해한다. JSP 가등장한배경을알아본다. JSP 공부방법과알아야하는기술및수준을알아본다.

Similar documents
본 강의에 들어가기 전

Microsoft PowerPoint - aj-lecture1.ppt [호환 모드]

혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 <html> 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 <html> 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가

J2EE Concepts

JavaGeneralProgramming.PDF

<4D F736F F F696E74202D20B5A5C0CCC5CDBAA3C0CCBDBA5F3130C1D6C2F75F31C2F7BDC32E >

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

TTA Journal No.157_서체변경.indd

게시판 스팸 실시간 차단 시스템

6강.hwp

2장 변수와 프로시저 작성하기

14-Servlet

뇌를 자극하는 JSP & Servlet 슬라이드

PowerPoint 프레젠테이션

소프트웨어 융합 개론

<4D F736F F F696E74202D2031C0E52E4A535020B9D C6574C0BB20C8B0BFEBC7D120B5BFC0FB20C0A520C7C1B7CEB1D7B7A1B9D620BCD2B0B32

Microsoft PowerPoint - web-part03-ch19-node.js기본.pptx

슬라이드 1

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

2009년 상반기 사업계획

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

PowerPoint 프레젠테이션

Network seminar.key

중간고사

WAS 의동작과 WEB, Servlet, JSP 엑셈컨설팅본부 /APM 박종현 웹어플리케이션서버란? 웹어플리케이션서버방식은웹서버가직접어플리케이션프로그램을처리하는것이아니라웹어플리케이션서버에게처리를넘겨주고어플리케이션서버가어플리케이션프로그램을처리한다. 여러명의사용자가동일한페

서블릿의라이프사이클 뇌를자극하는 JSP & Servlet

PowerPoint 프레젠테이션

Microsoft PowerPoint - 03-TCP Programming.ppt

자바-11장N'1-502

Interstage5 SOAP서비스 설정 가이드

Spring Boot

슬라이드 1

PowerPoint Template

Microsoft PowerPoint - 4강.pptx

<4D F736F F F696E74202D E20C0CEC5CDB3DD20C0C0BFEB20B9D720BCADBAF1BDBA20B1E2BCFA E >

Spring Boot/JDBC JdbcTemplate/CRUD 예제

Windows 8에서 BioStar 1 설치하기

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

PowerPoint 프레젠테이션

쉽게 풀어쓴 C 프로그래밊

KYO_SCCD.PDF

0. 들어가기 전


<4D F736F F F696E74202D20B5A5C0CCC5CDBAA3C0CCBDBA5F3130C1D6C2F75F32C2F7BDC32E >

Microsoft PowerPoint - web-part03-ch20-XMLHttpRequest기본.pptx

<param-value> 파라미터의값 </param-value> </init-param> </servlet> <servlet-mapping> <url-pattern>/ 매핑문자열 </url-pattern> </servlet-mapping> - 위의예에서 ServletC

Secure Programming Lecture1 : Introduction

[Brochure] KOR_TunA

Microsoft Word - src.doc

Data Provisioning Services for mobile clients

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

OSI 참조 모델과 TCP/IP

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

PowerPoint Presentation

제11장 프로세스와 쓰레드

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

PCServerMgmt7

[ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL T-SQL 문법 5.3 JAVA 프로그래밍 2

운영체제실습_명령어

BEA_WebLogic.hwp

PowerPoint Presentation

놀이동산미아찾기시스템

10.ppt

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

초보자를 위한 ASP.NET 2.0

Data Provisioning Services for mobile clients

슬라이드 1

Microsoft PowerPoint - GUI _DB연동.ppt [호환 모드]

chapter1,2.doc

1217 WebTrafMon II

<4D F736F F F696E74202D20C1A63236C0E520BED6C7C3B8B428B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

초보자를 위한 ASP.NET 21일 완성

< FC8A8C6E4C0CCC1F620B0B3B9DF20BAB8BEC8B0A1C0CCB5E5C3D6C1BE28C0FAC0DBB1C7BBE8C1A6292E687770>

The Pocket Guide to TCP/IP Sockets: C Version

<4D F736F F F696E74202D20332DC1F6B9DDC1A4BAB8BDC3BDBAC5DB>

뇌를 자극하는 JSP & Servlet 슬라이드

Network Security - Wired Sniffing 실습 ICNS Lab. Kyung Hee University

Microsoft PowerPoint App Fundamentals[Part1](1.0h).pptx

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft PowerPoint - aj-lecture7.ppt [호환 모드]

04장

PowerPoint 프레젠테이션

ThisJava ..

PowerPoint 프레젠테이션

00-CourseSyllabus


MySQL-Ch05

Microsoft Word - php05.doc

Network Programming

<4D F736F F F696E74202D20C1A63235C0E520B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

뇌를 자극하는 JSP & Servlet 슬라이드

NCS : ERP(SAP) ERP(SAP) SW IT,. SW IT 01., 05., 06., 08., 15., , 05. SW IT,,,, SAP HR,,, 4,,, SAP ABAP HR SCHEMA, BSP,

슬라이드 제목 없음

Microsoft PowerPoint - 04-UDP Programming.ppt

HTML5가 웹 환경에 미치는 영향 고 있어 웹 플랫폼 환경과는 차이가 있다. HTML5는 기존 HTML 기반 웹 브라우저와의 호환성을 유지하면서도, 구조적인 마크업(mark-up) 및 편리한 웹 폼(web form) 기능을 제공하고, 리치웹 애플리케이 션(RIA)을

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

PowerPoint Presentation

*2008년1월호진짜

제8장 자바 GUI 프로그래밍 II

Transcription:

1장시작하기전에 웹프로그래밍전반적인환경을이해한다. JSP 가등장한배경을알아본다. JSP 공부방법과알아야하는기술및수준을알아본다.

네트워크 사전적의미로전선이나혈관, 통로등으로이루어진망형조직을말하는것으로 IT 에서네트워크는컴퓨터와컴퓨터를연결해주는망을의미한다. 일상적으로사용하고있는인터넷은네트워크응용서비스의한종류로 TCP/IP 라고하는통신프로토콜에기반하고있다. 프로토콜은컴퓨터와컴퓨터가통신하기위한일종의규약으로서로다른언어를사용하는사람사이에의사소통이안되듯이네트워크에서도동일한규격의프로토콜을사용해야만네트워크가가능하다. 2

네트워크 >> TCP/IP TCP/IP(Transmission Control Prorocol/Internet Protocol) 는컴퓨터통신을위한프로토콜중하나로우리가사용하는인터넷의기반이된다. TCP/IP 가인터넷의기반프로토콜이된이유는하드웨어, 운영체제, 접속매체와관계없이동작할수있는개방형구조이기때문이다. TCP/IP 는보다큰네트워크프로토콜개념인 OSI 7 Layer 에서유래한것으로복잡성을단순화한 4 계층구조를가진다. OSI 7 계층 응용계층 표현계층 TCP/IP 4 계층 응용계층 네트워크를사용하는 WWW, FTP, 텔넷, SMTP 등의응용프로그램으로구성. 세션계층 전송계층 전송계층 도착지까지데이터를전송 각각의시스템을연결 TCP 프로토콜을이용하여데이터를전송 네트워크계층 데이터링크계층 인터넷계층 데이타를정의및경로지정 정확한라우팅을위해 IP 프로토콜을사용 IP 주소가위치하는계층 물리계층 물리계층 물리적계층즉이더넷카드와같은하드웨어 3

네트워크 >>IP 주소 네트워크에연결된컴퓨터를구분하기위해사용 4개로구분된 10진수를사용함. 사설 IP는 NAT(Network Access Translator) 등을이용해서인터넷접속시 공인 IP로매핑됨 ( 일부인터넷서비스에제약이있을수있음 ) IP 주소부족문제를해결하기위해 IPV6가논의됨. IP 주소구분 구분 범위 사용목적 클래스 A 1.0.0.0~127.0.0.0 대형통신망 클래스 B 128.0.0.0~191.255.0.0 중형통신망, 주소 65536개할당 클래스 C 192.0.0.0~223.255.255.0 소형통신망, 주소 256개할당 클래스 D - 멀티캐스트용으로예약, 배포중지 클래스 E - 실험목적, 배포중지1 4

네트워크 >> 도메인이름 IP 주소를알기쉬운이름으로바꾼것 DNS(Domain Name System) 서버가필요함. DNS 처리과정 <DNS zone file> www IN A 218.237.65.4 1www.hanbitbook.co.kr 2www 4218.237.65.4 3218.237.65.4 PC DNS 서버한국통신 / 하나로등 ns.hanbitbook.co.kr 한빛 DNS 서버 5

인터넷과웹서버서비스 Internet : 일반적으로우리가알고있는인터넷으로고유명사화되었음. internet : 내부네트워크를의미하는네트워크용어 인터넷과웹서버서비스 >> 인터넷과 www 서비스인터넷은 TCP/IP 기반의네트워크가전세계적으로확대되어하나로연결된 네트워크의네트워크 인터넷 = www 가아님. www 는인터넷기반의서비스중하나 대표적인인터넷기반서비스 이름 프로토콜 포트 기능 www http 80 웹서비스 Email SMTP/POP3/IMAP 25/110/114 이메일서비스 FTP ftp 21 파일전송서비스 telnet telnet 23 원격로그인 DNS DNS 83 도메인이름변환서비스 News NNTP 119 인터넷뉴스서비스 6

인터넷과웹서버서비스 >> 웹서버와클라이언트 서버 : 네트워크에서서비스를제공하는컴퓨터 클라이언트 : 네트워크에서서비스를제공받는컴퓨터 최근클라이언트와서버의하드웨어적인구분이없어지고있음 클라이언트 / 서버구조 운영체제지원 폴더공유 운영체제지원 WWW 클라이언트 웹브라우저 파일서버 프린터프린터서버 클라이언트 웹서버 S/W 웹서버 7

인터넷과웹서버서비스 >> HTTP HTTP : Hyper Text Transfer Protocol HTTP는 www 서비스를위한 TCP/IP 응용계층프로토콜중하나임웹서버와클라이언트는 HTTP를이용해통신 HTTP 동작원리 c:\> telnet www.naver.com 80. GET /index.html 네이버캡춰넣기 8

웹프로그래밍기술 >> HTML 과클라이언트스크립트기술 HTML: www 서비스를표현하기위해사용하는언어 www 를통해서비스하는모든내용은 HTML 로표현되어야함 HTML 은텍스트파일로정적인정보만처리가능 동적으로변하는정보를처리할수없음 동적인컨텐츠처리하기위해 CGI, Fast CGI, PHP, ASP, JSP 등의기술이사용 클라이언트스크립트 자바스크립트가대표적. 웹브라우저가스크립트해석의주체 웹브라우저핸들링은가능하지만서버연동은불가능 9

웹프로그래밍기술 >> CGI CGI : Common Gateway Interface 초기웹프로그래밍에사용된기술 프로세스단위로실행되기때문에사용자증가하면급격히성능저하 a.cgi http://xxx.xxx.xxx/cgi-bin/a.cgi 프로세스 http://xxx.xxx.xxx/cgi-bin/a.cgi 프로세스 a.cgi 사용자증가에따른시스템성능의급격한저하 10

웹프로그래밍기술 >> 서버스크립트기술 HTML 과스크립트언어를함께사용할수있는기술로웹서버에서해석 데이터베이스연동처리등다양한구현이가능 별도의컴파일과정없이 HTML 태그수정가능 서버스크립트로구현한예 (JSP) <%@ page contenttype="text/html;charset=euc-kr" %> <HTML> <HEAD><TITLE>Hello World</TITLE></HEAD> <BODY><H2>Hello World : 헬로월드 </H2> 오늘의날짜와시간은 : <%= new java.util.date() %> è asp 의경우 <%=now %> </BODY> </HTML> 11

웹프로그래밍기술 >> 서버스크립트기술 서블릿 (CGI 도유사 ) 으로구현한예 public class CMemberTest extends HttpServlet { public void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { response.setcontenttype("text/html; charset=euc_kr"); PrintWriter out = response.getwriter(); out.println("<html><head><title> 로그인 </TITLE></HEAD></HTML>"); out.println<body><h2>hello World : 헬로월드 </H2>"); out.println( 오늘의날짜와시간은 : +new java.util.date()); out.println("</body></html>"); } } 12

웹프로그래밍기술 >> 서버스크립트기술 ASP(Active Server Page) : 윈도우운영체제에기반한웹애플리케이션기술로비교적쉽고빠르게웹애플리케이션구현이가능하다. 최근윈도우개발환경이닷넷 (.Net) 플랫폼으로변화되면서 ASP.Net 이라는이름으로변경되어보다강력해졌다. PHP(Professional Hypertext Preprocessor) : 오픈소스프로젝트로다양한운영체제와웹서버를지원한다. 빠른처리속도와메일, 데이터베이스연동기능등을통해초기서버스크립트기술의대표로주목받았으나완전한프로그래밍언어가아닌관계로기능확장에한계가있다. 최근까지도거급된발전을통해처음보다많이향상된기능을제공하나예전에비해전체적인사용빈도는떨어진다. JSP(Java Server Page) : 서블릿이라고하는자바웹프로그래밍기술에기반을두고있으며, PHP 나 ASP 와같이 HTML 과함께스크립트를사용할수있도록되어있다. JSP 의장점은스레드기반으로시스템자원을절약하고효율적인공류가가능하며최초요청시서블릿으로컴파일되어이후요청에대해서는메모리에서처리하므로보다빠른처리속도를제공한다. 또한자바언어의모든기능을사용할수있으므로무한한확장성을자랑한다. 13

차세대인터넷프로그래밍기술 >> 웹 2.0 과 Ajax 웹 2.0 : 2004 년처음등장한용어로지금까지의웹을중심으로한기술및응용방식에대한새로운접근이라는차원에서등장 플랫폼 (Platform) 으로서의웹 현존하는다양한기술들의융합으로구현가능한모델 웹2.0의탄생배경 가벼운프로그래밍모델 Coordination < Syndication 개조와재조합이가능한설계 Ajax(Asynchronous JavaScript and XML) 웹2.0의기술철학이가장잘반영된기술로기존기술에대한새로운관점에서의융합 기존의 HTTP, XML 기술을이용한단순하면서도강력한프로그래밍모델 구글맵, 검색사이트자동단어추천, 위젯형식의실시간정보전달컨텐츠구현에사용 오리지널구글맵이외에구글맵과연동하는다양한애플리케이션개발가능 14

차세대인터넷프로그래밍기술 >> 오픈소스프레임워크 오픈소스 : 말그대로소스가공개되어있다는의미로리눅스로대표되는프로그래밍문화의일종으로최근에는오히려대기업들을중심으로오픈소스지원이확대되고있다. 프레임워크 (Framework) : 특정애플리케이션개발을위한표준화된설계모델과 API 를통칭하는용어 웹애플리케이션의규모가커지고시시각각변화하는사용자요구사항을보다신속하게반영하고기존시스템을효율적으로유지보수하기위한노력의결과물 차세대인터넷프로그래밍기술 >> 시멘틱웹과온톨로지 시멘틱웹 (Semantic Web) 은컴퓨터가정보자원의뜻을이해하고추론까지할수있는차세대지능형웹을의미함. 온톨로지 (Ontology) : 시멘틱웹을가능하게하는기술중하나로특정지식도메인내에있는콘텐츠의실체및상호작용에대한작업모델을의미하는일종의데이터베이스구조로개념에대한상하관계및다른관계들과의제약조건등을포함한지능화된구조임 15

Section 02 자바와서블릿그리고 JSP 자바와서블릿 자바 (Java) : 썬마이크로시스템즈에서개발한객체지향프로그래밍언어로간결하고플랫폼독립적인특징으로 PC, 핸드폰, 각종임베디드장치에폭넓게사용되고있다. 서블릿 (Servlet) : 자바기반의웹프로그래밍기술로자바언어의모든기능을사용할수있으며쓰레드기반의빠른처리속도를자랑하나, 프로그램내에서화면코딩을제어해야하는문제로인해유지보수에많은문제가있다. 이러한문제점을개선한것이 JSP로 JSP는내부적으로서블릿기술에기반하고있다. JSP(Java Server Page) JSP 는서블릿기반의서버스크립트언어로오늘날가장대표적인웹프로그래밍기술이라할수있다. 서블릿의장점을모두수용하면서단점을보완 커스텀태그, JSTL, JSF 등다양한응용기술을탄생시켰으며자바기술의정점인 Java EE(Enterprise Edition) 의프리젠테이션레이어핵심기술이다. 16

Section 02 자바와서블릿그리고 JSP JSP 의특징 빈즈라고하는자바컴포넌트를사용할수있다. 최초의서블릿으로컴파일된후에는메모리에서처리 많은사용자접속도원활히처리할수있다. JSP나다른서블릿간의쉬운데이터공유 page, request, session, application scope 으로가능 자바의모든기능을사용할수있다. 무한한확장성 IBM, 오라클, 썬, BEA 등에서강력히지원 사용자태그를만들어사용할수있다. JSTL(JSP Standard Tag Library) 과같은다양한기능의태그라이브러리이용가능 다양한운영체제와여러회사의 JSP 개발 / 실행환경을이용할수있다. 17

Section 02 자바와서블릿그리고 JSP JSP 동작원리 일반적인웹 (www) 서비스동작과정 1 URL 입력 www.xxx.com DNS 서버 2 IP 주소로변화 211.xxx.xxx.com 3 해당 HTML 페이지요청 http://www.xxx.xxx/index.html 5 HTML 파일 ( 텍스트 ) 전송 80 포트 4 요청분석 HTML 파일읽기 PC/ 웹브라우저 6 HTML 태그분석변환 / 화면구성 <HTML> <BODY> 웹서버 index.html 18

Section 02 자바와서블릿그리고 JSP JSP 동작원리 JSP 동작과정 DNS 서버 9 HTML 태그분석변환 / 화면구성 1 URL 입력 www.xxx.com PC/ 웹브라우저 2 IP 주소로변화 211.xxx.xxx.xxx 3 JSP 페이지요청 http://www.xxx.xxx: 8080/index.jsp <HTML> <BODY> 8080 포트 8 결과페이지 (HTML) 전송 웹서버 index. jsp 4 요청 / 분석넘기기 7 실행결과전송 JSP/ 서블릿컨테이너 DB 5 컴파일 6 서블릿적재 index. jsp 서블릿 7 데이터전송 19

Section 02 자바와서블릿그리고 JSP JSP 동작원리 JSP 서블릿변환처리및데이터연동과정 20

Section 03 JSP 학습에필요한관련기술 JSP 를배우기위한필수기술 필수기술프로그램경험비고 자바 자바언어기본 객체지향개념 상속, 오버로딩, 오버라이딩 인터페이스구현 java.util, java.io 패키지 스레드 예외핸들링 패키지와클래스이해 클래스 DOC 을참조하여프로그래밍이가능한수준 자바개발환경설치및사용 JDBC JDBC 드라이버세팅 ResultSet PreparedStatement 데이터핸들링 기초 SQL 문 오라클, MySQL 등원격지데이터베이스연결처리경험 서블릿 서블릿구조이해 간단한서블릿프로그래밍 request, response 처리 GET/POST 처리 서블릿생명주기이해 21

Section 03 JSP 학습에필요한관련기술 JSP 를배우는데도움이되는관련기술 관련기술프로그램경험최소요구사항 HTML 자바스크립트 데이터베이스 HTML 기초태그사용 FORM 관련태그사용 함수 (Function) 만들기 FORM 연계 이벤트처리 다양한 SQL 문의사용 데이터베이스연계프로그래밍경험 데이터베이스함수및내장프로시저 전용편집기가아닌수작업으로코딩이가능한수준 CSS, 레이어이해 자바스크립트문법이해 브라우저객체모델이해 테이블생성및키에대한이해와관계설정 웹프로그래밍 웹서버세팅 CGI, ASP, PHP 등웹프로그래밍경험 유닉스에서웹서버세팅경험 XML XML 스키마및 DTD 이해 XML DOM 개요 스키마와 DTD 기반의 XML 문서작성및파싱능력 22