Top Banner
1. modul - Webalkalmaz´ asok fejleszt´ ese ANTAL Margit Sapientia - EMTE, Pannon Forr´ as ,,Egys´ eges erd´ elyi feln˝ ottk´ epz´ es a arp´ at-medencei h´ al´ozatban” 2010 ANTAL Margit 1. modul - Webalkalmaz´ asok fejleszt´ ese
32

1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Nov 16, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

1. modul - Webalkalmazasok fejlesztese

ANTAL Margit

Sapientia - EMTE, Pannon Forras ,,Egyseges erdelyi felnottkepzes aKarpat-medencei halozatban”

2010

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 2: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Konyveszet

[Antal ] Java alapu webtechnologiak, Scientia, Kolozsvar,2009.

[Sun] Sun Microsystems, Web Component Development withServlet and JSP Technologies. SL-314, 2007.

[Hunter ] Jason Hunter, Java szervletek programozasa,Kossuth kiado, 2002.

[Bergsten] Hans Bergsten, Java Server Pages, Kossuth kiado,2001.

[Crawford ] William Crawford, Jonathan Kaplan, J2EE DesignPatterns, O’Reilly, 2003.

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 3: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Temakorok

Webalkalmazasok fejlesztese

Szervletek

Menetek kezelese

Esemenykezelok es szurok

JSP lapok

JSP elemkonyvtarak

Adatbazisok hasznalata webalkalmazasokban

A Struts keretrendszer

Webalkalmazasok biztonsaga

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 4: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Webalkalmazasok fejlesztese

Webalkalmazas technologiak

A Java EE 5 platform

Webalkalmazasok vegrehajtasa

Szervlet technologia

JSP technologia

Haromretegu webalkalmazasok

MVC architektura

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 5: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Webalkalmazas technologiak

HTTP, Hypertext Transfer Protocol

HTML, Hypertext Markup Language

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 6: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Webhely es webalkalmazas

Web hely:

HTML es mas mediafajlok gyujtemenyewebszerveren van elhelyezvekomplex konyvtarstruktura jellemezheti

Webalkalmazas:

web hely + programvegrehajtas szerver oldalondinamikus tartalom

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 7: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Java es Java platformok

Java:

Programozasi nyelvFuttatasi kornyezet (JRE)

Java platformok:

Java SE - Java Standard EditionJava EE - Java Enterprise EditionJava ME - Java Mobile Edition

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 8: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Java EE 5 platform

Alkalmazasok komponens alapu

tervezese - designfejlesztese - developmentosszeallıtasa - assemblytelepıtese - deployment

tobbretegu osztott alkalmazasmodell

ujrafelhasznalhato komponensek

egysegesıtett biztonsagi modell

tranzakciovezerles

web-szolgaltatasok

platformfuggetlenseg

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 9: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Webszerverek es kliensek

Ceg Szerver Kliens

Apache httpdNetscape Netscape Server Netscape NavigatorMicrosoft IIS Internet ExplorerMozilla Firefox

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 10: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

CGI-Common Gateway Interface

Szerveroldalon futtatott alkalmazas: szkript vagyvegrehajthato allomany

A szerver kulon folyamatkent futtatja

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 11: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

CGI programok

CGIprogram

CGIprogram

CGIshell

CGIshell

CGIshell

httpd

httpd

Kérés

Kérés

Kérés

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 12: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

CGI elonyok es hatranyok

Elonyok

Barmilyen programozasi nyelvben elkeszıtheto (Perl alegelterjedtebb)Hibas CGI program nem befolyasolja a webszerver mukodesetKenyelmes a hıvasa - egy sor a weboldalonNincs konkurencia problema - minden CGI program sajatburokban futMinden szolgaltato tamogatja

Hatranyok

Idoigenyes - a burok letrehozasa miattNem skalazhatoA CGI programnyelvek nem mindig biztonsagosakA szkript nyelvek neha platformfuggok is lehetnek

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 13: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Skalazhato web architektura

fuggoleges: Ugyanazon egyseg kapacitasanak novelese (pl.memoria bovıtese, uj processzor hozzaadasa, merevlemezhozzaadasa)

vızszintes: Tobb logikai egysegbol osszeallıtani egy olyanegyseget, amely a felhasznalok fele egy egysegkent latszik. Pl.klaszter, osztott fajlrendszer stb.

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 14: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Szervletek

szervlet

Szál

Szál

Szál

Szál szervlet

web szerver

web szerver

web konténer

web konténer

kérés

kérés

kérés

kérés

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 15: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Szervlet elonyok es hatranyok

Elonyok

Gyorsabb mint a CGISkalazhatoHibaturo ⇐ Java nyelvben ırodottPlatformfuggetlen ⇐ Java nyelvben ırodottNaplozasi lehetoseg

Hatranyok

Keveredik a Java kod (logika) HTML koddal (megjelenıtes)A weblap modosıtasa maga utan vonja a szervlet ujrafordıtasates telepıtesetKonkurencia problemakat kell kezelni

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 16: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Szervletek vegrehajtasa

A szervletek a szervletkontenerben futnak (szervlet motornakis nevezik)

Webkontener = Szervletkontener = JVM + Servlet API

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 17: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

JavaServer Pages technologia

Java szervletek

Java kodba beagyazott HTML kod

JavaServer Pages - JSP

HTML oldalba beagyazott Java kod

A JSP oldal szervletkent fut

Ami szervletkent megvalosıthato az megvalosıthato JSP-ben is

A JSP a prezentacios reszre fokuszol

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 18: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

JSP - pelda

Egyszeru JSP lap

<table><% for( int i=0; i<10;++i){ %>

<tr><td><%=i%><%=(i*i)%><br></td></tr>

<% } %></table>

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 19: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

HTML + beagyazott kod

JSP - Java Server Pages

PHP - ..HyperText Preprocessor

ASP - Active Server Pages

Ruby on Rails

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 20: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

JSP elonyok es hatranyok

Elonyok

Hatekony (szalak )PlatformfuggetlenKenyelmes

Hatranyok

Nehezkes hibakeresesAz alkalmazas logika es megjelenıtes nehezen valaszthato szetKonkurencia kezeles

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 21: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Haromretegu alkalmazas

Cel: az alkalmazas rugalmassaganak novelese

Ugyfel reteg

Uzleti logika

Adat (perzisztens)

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 22: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Model-View-Controller (MVC) architektura

Model - Modell - Az adatok, illetve az ezeknek megfeleloadatstrukturak, objektumok

View - Megjelenıtes - A modell megjelenıtese

Controller - Vezerles - Esemenyek, amelyek hatasaratevekenyseget kell vegezni a modellen

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 23: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

MVC-web

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 24: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Megjegyzes

Megjegyzes

A harom retegu architektura 6= MVC

ControllerView

Model

logika

Üzleti AdatKliens

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 25: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Webalkalmazas modellek

1. Modell: A kerest egy JSP lap vagy egy szervlet feldolgozza,elvegzi az adatok ervenyesıteset, kezeli az alkalamazaslogikajat es eloallıtja a keresre a valaszt

2. Modell: Celja a feladatok jobb szetvalasztasa;Megvalosıtas: MVC architektura;

Model: Java osztalyok, megvalosıtjak az alkalmazas logikajatView: JSP lap, eloallıtja a valaszt HTML formatumban;szukseg eseten kommunikal a modellel adatok elerese celjabol;az eloallıtott urlap megteremti az interaktıvitas lehetosegetController: A vezerlest egy szervlet vegzi. Feladata a beerkezoadatok ellenorzese, a modell es a megjelenıtes frissıtese

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 26: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

2. modell tıpusu letezo keretrendszerek

Struts - Jakarta

JavaServer Faces - Sun

Velocity - Apache

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 27: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Java EE kontenerek

EJB kontener - Nagyvallalati babok futtatasa - A Java EEszerveren fut

Webkontener - JSP lapok es szervletek futtatasa - A Java EEszerveren fut

Kliens alkalmazas kontener - Kliens komponensek futtatasa -Kliens oldalon fut

Applet kontener - Appletek vegrehajtasa - Java kompatibilisbongeszo kliens oldalon

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 28: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Java EE kontenerek

[Java EE 5 Tutorial]

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 29: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Java EE alkalmazasok

[Java EE 5 Tutorial]

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 30: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Java EE webtechnologiak

Java Servlet 2.5

JavaServer Pages 2.1

JavaServer Pages Standard Tag Library

JavaServer Faces 1.2

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 31: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Java EE kontener szolgaltatasok

tranzakciokezeles

szalkezeles

nevszolgaltatas

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese

Page 32: 1. modul - Webalkalmazások fejlesztésemanyi/tanfolyam/modul1_webalkalmazasok... · 1. modul - Webalkalmaz asok fejleszt ese ANTAL Margit Sapientia - EMTE, Pannon Forr as ,,Egys

Webalkalmazas tıpusok

Webcentrikus:

Statikus HTMLHTML alapveto szervletekkel es JSP lapokkalJSP JavaBeans komponensekkel

Java EE centrikus: Strukturalt webalkalmazasok modulariskomponensekkel es Enterprise Bean-ekkel

ANTAL Margit 1. modul - Webalkalmazasok fejlesztese