Applicatie-Architecturen



Vergelijkbare documenten
Applicatie-Architecturen

Dynamische webapplicaties in Java

Inhoudsopgave. Hoofdstuk 1.Inleiding...3

Session Beans.

JavaServer Faces 2.1

INFITT01 - Internettechnologie WEEK 8

Technisch Ontwerp W e b s i t e W O S I

Zelftest Java EE Architectuur

User interface ontkoppeling

Gebruik van cryptografie voor veilige jquery/rest webapplicaties. Frans van Buul Inter Access

Zelftest Java concepten

4 ASP.NET MVC. 4.1 Controllers

Inhoud eindtoets. Eindtoets. Introductie 2. Opgaven 3. Terugkoppeling 9

De architect: in spagaat tussen mensen en technische details. Illustratie met een simpel voorbeeld

HTTPS. HTTP over SLL Publieke sleutel certificaat Getekend door betrouwbare bron In transport laag

ECTS fiche. Module info. Evaluatie. Gespreide evaluatie OPLEIDING. Handelswetenschappen en bedrijfskunde HBO Informatica

HOGESCHOOL ROTTERDAM / CMI

Master Class Java Accelerated

Capita Selecta Design Patterns voor administratieve applicaties

APEX en JasperReports

Oracle Application Server Portal Oracle Gebruikersgroep Holland Oktober 2003

Stappenplannen MailPlus SOAP API

Zelftest Internet concepten en technieken

Exercise assistant on-line

Java op het Oracle 9i platform

Zelftest Internet concepten en technieken

i ll take off to the cloud

What is the advantage of using expression language instead of JSP scriptlets and JSP expressions?

Technisch ontwerp. Projectteam 6. Project "Web Essentials" 02 april Versie 2.1.0

Praktijk en practices

Onderzoek Templating en i18n

Samengaan van Geo-informatie en Service Oriëntatie

tot oplevering (thuis e maken met ondersteuning via forum) Cursus Moodle, boek, internet

emaxx Systeem eisen ManagementPortaal voor de ZakenMagazijn database

F r a m e w o r k s. LinkWorks

Inhoud. Introductie tot de cursus

Introductie Veiligheidseisen Exploiten Conclusie. Browser security. Wouter van Dongen. RP1 Project OS3 System and Network Engineering

Whitepaper. Connected Android Apps. Inleiding

Master Class Java Accelerated

Portals & Open Source

Technisch ontwerp. Projectteam 6. Project "Web Essentials" 11 maart Versie 1.1.0

Copyright IBS Nieuwbouw. Vereenvoudigd en versnelt Java ontwikkeling. Huub Cleutjens

Acht stappen voor JSF

Is APEX a worthy substitute for Oracle Forms?

Enterprise JavaBeans 3.2

Correspondentie inzake overnemen of reproductie kunt u richten aan:

HDN DARTS WEB AUTHENTICATIE

Oracle Portal in een Service-Oriented Architecture (SOA) ir. Jeroen F. van Schaijk Senior Consultant Emerging Technologies

Object Oriented Programming

Workflows voor SharePoint met forms en data K2 VOOR SHAREPOINT

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous

Maximo Tips and Tricks

Opdrachtformulering (pagina 3 van 7)

Software Engineering Group 3

Zelftest Informatica-terminologie

Onderzoek Framewerk. Standaard framewerk webapplicatie. Afstuderen. Bert Gritter Rob Juurlink 2004

Enterprise JavaBeans 3.1

Software Design Document

Generiek framework voor administratieve toepassingen in een webgeörienteerde omgeving

Les 9: formulier controle met javascript.

Webcomponenten JEE 8

De clientkant van webapplicaties in het universitaire onderwijs

Naam project Lost And Found Animals Lokaal gehost Percentage van het totaal geleverde werk 1 Cindy Jansen 50% 2 Eline Steyvers 50%

Dynamische Websites. Week 3. donderdag 3 oktober 13

Angular Best Practices Door Alex en Chris van Beek

SOA Security. en de rol van de auditor... ISACA Roundtable 2 juni Arthur Donkers, 1Secure BV arthur@1secure.nl

Summerschool Mobiele Apps augustus 2012 Herman van Dompseler. HTML 5 App

Van 6 weken naar 6 minuten. met. OpenSource. Jan-Taeke Schuilenga Infrastructuur Architect Jantaeke.schuilenga@duo.nl

Project plan. Erwin Hannaart Sander Tegelaar

Projectopgave: Sociaal Kennis Databank

ASR Mainframe Monitoring mbv BMC Dataserver

Gestart als demo/research voor cloud-oplossing. Een Afslagveiling

J2EE/.NET en de rol Applicatie Architectuur

Webuniversum.

INFITT01 Internettechnologie WEEK 2

Software Design Document

.NET of.not in de praktijk voorbij het onderbuikgevoel

TECHNICAL DESIGN DOCUMENT

Je website (nog beter) beveiligen met HTTP-Security Headers

Java Server Pages.

Responsive web applicaties op Oracle

Security web services

Correspondentie inzake overnemen of reproductie kunt u richten aan:

Poging 3: KEY001: SESID: Hiermee zijn we ingelogd als gebruiker DEMO2 :

Je gaat nu een Zend-Project maken in de map C:/wamp/www (de document root van de webserver) met behulp van Zend Tool..

Self-service functionaliteit

Performance Essentials

1.7 Ontleding van het eerste programma... 14

Onder de motorkap van Microsoft Azure Web Sites. Eelco Koster Software architect ORDINA

DRENTHECOLLEGE.NU STUDIEGIDS ICT-LYCEUM Programma van Toetsing en Afsluiting. TE nr1

Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat

Client Applicaties (Browser+Desktop) http/https. Apache Webserver. http proxy. WMS WFS Adm SLD Tomcat. Tomcat. GeoServer. PostGIS

JSF webapplicatie performance

Transcriptie:

Applicatie-Architecturen joost.vennekens@kuleuven.be http://www.cs.kuleuven.be/~joost/dn/

Onderwerp Programming in the large! (<> programming in the small)! Bijvoorbeeld: KU Leuven Veel verschillende functionaliteit met gemeenschappelijke kern

Structuur vak Theorielessen:! grote lijnen! beperkt (6/12), aangevuld met zelfstudie (cursustekst en online)! http://www.cs.kuleuven.be/~joost/dn/! Practicum:! inoefenen in the small

Project In groepjes van 2! Tijdens practicumsessies en daarbuiten! Deadline: begin examenperiode! Op NetBeans 7.4! Wekelijks verslag (wie, wat, hoe lang) volgens template

Evaluatie Op basis van! Project: werkt het en is het volgens de richtlijnen?! Verslagen! Werk tijdens practica! Mondelinge ondervraging over project

ECTS-fiche

Inhoud Java Entreprise Edition (JEE) raamwerk! Glassfish Server! NetBeans IDE! + inleiding.net

Doel Eenheid in verscheidenheid

Doel Eenheid in verscheidenheid Zelfde look! Zelfde login! Gedeelde gegevens! Verschillende GUI! Verschillende functionaliteit! Verschillende gegevens Zelfde URLs

Nog meer verscheidenheid Verschillende programmeurs! Verschillende omgevingen, machines, databanken, legacy software! Web UI, native UI, webservices

Applicatiearchitectuur Brengt daar eenheid in! Portaalfunctie! Web UI, native UI, webservices! Centraliseren van gedeelte functionaliteit! Security, logging, lokalisatie, configuratie,! Focussen op eigen business logica

Traditionele webserver http request Client http response Server html HD internet Client Server

Dynamische webserver http request Client http response Server html PHP internet Client Server HD

AA Client http request http response proc proc Server proc internet Client Server HD

Voorbeeldje BierExpert! Termen:! Web container, EJB container! Java Server Pages! Servlets! Web Deployment Descriptor

Servlet Client http request http response proc proc Server proc Idee: Servlet is code die response genereert op basis van request! HD Formeel: klasse die javax.servlet.servlet implementeert

javax.servlet.servlet

Servlet Client http request http response JEE servlet Server servlet proc webcontainer Levenscyclus wordt beheerd door server (webcontainer)! HD Zorgt dat er (hoogstens 1) instantie is! Kunnen samenwerken in ketting

HttpServlet javax.servlet.http.httpservlet implementeert javax.servlet.servlet

Voorbeeldje BierKeuze1.java

Java Server Pages HTML + scriptlets + JSP tags Makkelijker om HTML uitvoer te genereren! Voorbeeldje: resul.jsp! Wordt on-demand vertaald naar servlet

JSP Tags Scriptlets zijn nogal ongebruiksvriendelijk! (voor webdesigners)! Oplossing: complexiteit verbergen in HTML tags! JSP Standard Tag Library

Web deployment descriptor Voorbeeldje: web.xml! Configureert o.a.! Servlet mappings! Foutenboodschappen! Koppeling met DBen

Gedeelde geheugen Client http request http response servle t servlet JEE Server proc webcontainer Informatie delen tussen processen! Informatie onthouden doorheen verschillende oproepen HD

Gedeelde geheugen Webpagina! Request! servlet-code om een object uit het gedeelde geheugen te halen oferintezetten: //Op Request-niveau List lijst ; lijst = (List) Sessie! request.getattribute( naam van object ); request. setattribute ( naam van object, lijst ); //Op Sessie-niveau HttpSession session = request. getsession (true ); Applicatie lijst = (List) session.getattribute( naam van object ); session. setattribute( naam van object, lijst ); //Op Context-niveau lijst = (List)getServletContext().getAttribute( naam van object getservletcontext (). setattribute ( naam van object, lij st );

MVC patroon Model-View-Controller design pattern de business logica wordt uit de servlet verplaatst naar het Model VIEW Verantwoordelijk voor de presentatie. deel met gebruikersinput, die dan doorgestuurd wordt naar de Controller. <% servlet %> POJO JSP DB CONTROLLER gebruikersinput uit de request naar Model nieuwe toestand van Model naar View MODEL reële toestand en business logica (regels die op deze data werken). in contact met de databank, (via een ander object)

Voorbeeld Voorbeeld De gebruiker kan via een formulier informatie opvragen omtrent biersoorten. Web Server web browser 1/4 3/11 keuze.html 2 Container Container logic 10 <% %> resul.jsp 8 9 5 servlet 6 7 BierExpert request