Web- og serverprogrammering



Relaterede dokumenter
Java-opgraderingskursus

Web- og serverprogrammering

OpenTele datamonitoreringsplatform

KIH Database. Systemdokumentation for KIH Databasen. 1. maj Side 1 af 13

javabog.dk Webprogrammering med Java Server Pages Forord

Curriculum Vitae for Søren Brønsted

PHP Quick Teknisk Ordbog

FleeDa (DBK Fleetmap Database) Installationsvejledning til installation af VPN og FleeDa klient på egen PC (Juli 2017)

Arkitektur for begyndere

Servlets, Tomcat & BlueJ

KIH Database. Systemdokumentation for KIH Databasen. 12. september Side 1 af 20

Curriculum Vitae for Søren Brønsted

Programmering I Java/C#

Opdatering af ISOWARE til version 6.1.0

Installation af Elektronisk APV på flere PC er

Webserverprogrammering

Chippay.NET applikationen

MySQL i Java. Tutorial lavet af Jákup W. Hansen TSU semester 05.januar 2007

Om styles / typografier / typografiark / stylesheets

Databaseadgang fra Java

Installation af Oracle 10g Release 2 HTML DB

Tillykke Med Fødselsdagen

Single sign-on cases. SolutionsDay Morten Strunge Nielsen Globeteam Virumgårdsvej 17A 2830 Virum

Civilstyrelsen. Lex Dania editor Eunomia. Installationsvejledning. Version:

Civilstyrelsen. Lex Dania editor Installationsvejledning. Version:

Web- og serverprogrammering

Udvikler på diverse web-baserede systemer der anvender teknologier som: Servlets, JSP, Ajax, XMLBeans, XML, XSL, CSS, HTML, JQuery, JavaScript.

Quick Guide. Version 0.9

DocBook SGML/XML. Forhistorien for Linux Friheden til at vælge Dokumentation. I bestemmer :-) Motivation for DocBook Alternativer til DocBook Docbook

Kom i gang med SAS STPbaserede

Netværk & elektronik

Førsteårsprøven Projektbeskrivelse 2. Semester Multimediedesigner

Du kan læse mere om eduroam, og se hvilke institutioner der er med, på den danske hjemmeside eller på den internationale hjemmeside.

VIGTIG information til alle kunder som kører backup over Internet via SSL - Kræver kundeaktion inden 17. april 2009!

Quick Guide for TopSURV DGPS

xgalleri Mulige filtyper Installation web-version

Curriculum Vitae Jack Petersen

Quick guide - WISEflow

1 Start installation. 2 Vælg Kør. Installation af Næsgaard Mark.NET og konvertering af data

PHP 3 UGERS FORLØB PHP, MYSQL & SQL

Interaktionsudvikling

Kom godt i gang med Erhvervsakademiets IT

Øvelse 1, individuel øvelse billeder, links og undersider

Forståelse for grafisk workflow

Følgende versioner af Windows-operativsystemet understøtter Novell Filr Desktop-programmet:

Mini Afsluttende Projekt

Version 1.0 Januar Xerox Phaser 3635MFP Extensible Interface Platform

Projektoplæg - AMU kursus Netteknik - Server - Videregående

Undervisningsplan. Side 1 af 9. Termin Rybners Tekniske Gymnasium. Uddannelse. Fag og niveau. Informationsteknologi B

Smartair 6.0. Installations guide

Installation af DriverPrint - Windows

Håndbog Til CPR services. Bilag 10 Opsætning af CPR klienten til understøttelse af forskellige installationstyper

Forskellige Java versioner

IT-VEJLEDNING TIL MAC

Vejledning til Teknisk opsætning

Citrix Receiver guide til Mac, Iphone, Ipad Version

Quick Guide. Version 0.9

Citrix Receiver komplet guide til installation, brug og fejlfinding Version

Integrationsmanual. Anvendelse af webservice til kursusoversigt i Campus. Brugervejledning til udviklere

Installation af web-konfigurationsprogrammer

Sådan logger du ind... 2 Hvilke mapper kan du tilgå... 3 Visning af eksempel af en fil... 5 Sådan deler du en fil... 7 Se hvad du deler med andre...

Sådan kan du sende data fra din egen hjemmeside til JitBesked via en HTML-JDF.

Egenudviklet promotion tool mellem forskellige SAS Visual Analytics miljøer.

Vejledning til Retsinformation web services test stubs

Test af It-komponent

IT Support Guide. Installation af netværksprinter (direkte IP print)

Erhvervserfaring Senior IT Specialist, IBM Systemudvikler, Dan Net Systemudvikler, KMD

Undervisningsbeskrivelse

Installering af Microsoft Office Version 2.1

Transkript:

Web- og serverprogrammering Introduktion til web- og serverprogrammering - dag 1 Overblik over WSP, eller: de 3+x sprog i webprogrammering (HTML, CSS, JavaScript, plus x serverside-sprog) Installation af webserver og webapplikationer Opsætning og brug af værktøjer Introduktion til obligatorisk opgave Introduktion til JSP - Java Server Pages Læsning: WJSP kapitel 1 og kapitel 2-2.4 Dette materiale er under Åben Dokumentlicens, se http://www.sslug.dk/linuxbog/licens.html

Om kurset I kurset benyttes Oracle JDeveloper (1 GB RAM) Hent fra http://oracle.com eller mit delte drev Andre værktøjer kan også benyttes Lærebogsmateriale (kan købes i pausen) "Webprogrammering med Java Server Pages" af Jacob Nordfalk En stor del af lærebogen findes også på nettet: http://javabog.dk/jsp/ (dog ikke nok til at du kan undgå at købe bogen :-) Præsentationer til kurset kan hentes på: http://javabog.dk/foredrag/wsp-1_e2009/ Uddelte fotokopier og noter Underviser: Jacob Nordfalk

Overblik: Webserverprogrammering - 3 sprog på klientsiden (HTML, CSS, JavaScript) - x sprog på serversiden (f.eks. Java, JSP, JSF, XML,...)

Projektopgaven Erfaring med webprogrammering gennem et projekt Omfang: Cirka 80 timer Formål: at deltagerne får programmeret så meget som muligt på et projekt at de får arbejdet med de ting fra kurset der interesserer dem mest en mindre del af de berørte teknikker i kurset skal indgå Kan laves i grupper á 1-3 personer Det kunne f.eks. være: et projekt fra arbejdet en prototype på dit afgangsprojekt en interaktiv webside du savner Diskussionsforum, foreningsside, gmail-klon, e-handel,... Et elektronisk "dueslag" til aflevering af skriftlige opgaver i folkeskolen! Du skal lægge dig fast på et projekt til gang 4 Hjemmeopgave: Beskriv din ide til projekt (10-30 linier).

Om jer Runde om jer Navn Kurser i / erfaring med programmering Java HTML Javascript... Hvad du i øvrigt beskæftiger dig med Allerede idé til projekt? (i gruppe?)...

Java Server Pages HTML-sider med Java-kode i Java-koden fortolkes og udføres på serveren Oversættes til binær (maskin)kode ved første forespørgsel Serveren udfører: <html> <head><title>hej</title></head> <body> Her kommer noget JSP kode: out.println( "<h1>hej verden!</h1>" ); out.println( "To plus to er: " ); out.println( 2 + 2 ); %> </body> </html> Klienten modtager: <html> <head><title>hej</title></head> <body> Her kommer noget JSP kode: <h1>hej verden!</h1> To plus to er: 4 </body>

Java Server Pages Løkker og kontrolstrukturer skrives i Java Serverkode indlejret i... %> Udtryk kan også indlejres med =... %> <html> <head><title>syvtabellen</title></head> <body> <p>her er syv tabellen:<br> for (int i=1; i<=10; i++) { %> Syv gange = i %> er: = 7*i %>.<br> } %> </p> </body> </html>

request-objektet <html> <head><title>data om klienten</title></head> <body> <h1>nogle data om klienten (request objektet)</h1> <pre> URL request.getrequesturl(): = request.getrequesturl() %> Metode getmethod(): = request.getmethod() %> Protokol getprotocol(): = request.getprotocol() %> Værtsnavn getservername(): = request.getservername() %> Port getserverport(): = request.getserverport() %> URI getrequesturi(): = request.getrequesturi() %> Klients IP adresse getremoteaddr(): = request.getremoteaddr() %> Klients maskinnavn getremotehost(): = request.getremotehost() %> Foretrukne sprog getlocale(): = request.getlocale() %> Netlæser/browser header user agent: = request.getheader("user agent") %> </pre> </body> </html>

Udviklingsværktøj til webudvikling Oracle JDeveloper

Platforms- og serveruafhænighed Java er platformsuafhængigt kører på Linux, Mac, Windows, Unix,... JSP-webapplikaton er derfor platformsuafhængig Standarder for struktur på webapplikation Konfiguration f.eks. altid i WEB-INF/web.xml Standard er del af J2EE-specifikationen Tomcat er referenceimplementation Mange alternativer Tomcat, Oracle (OC4J), BEA Weblogic, Sun Glassfish, Resin,... Derfor frit valg af platform og server Udvikl på Windows-bærbar Sæt i drift på Linux-maskine

Opsætning af Java-webserver (Jarkata Tomcat) Installér Java (JDK) tjek at java er i stien Installér og prøv Tomcat Hent fra http://tomcat.apache.org/ Pak ud (apache-tomcat-6.0.20.zip) Start bin/startup.sh Kig i logs/* Prøv http://localhost:8080/ Udforsk webapps/

Installation af en webapplikation WAR-fil (Web ARchive) = ZIP-fil med hel applikation Hent WAR-fil Læg i webapps/ og den installeres automatisk Al opsætning findes i WEB-INF/web.xml

Formularer og interaktive sider <html> <head><title>formular</title></head> <body> <h3>hvad hedder du?</h3> <form> <input type=text name="navn"> </form> </body> </html> String navnet = request.getparameter("navn");

Formularer og interaktive sider <html> <head><title>parametre2</title></head> <body> String navnparameter = request.getparameter("navn"); String idparameter = request.getparameter("id"); if (navnparameter == null) { %> Angiv navn og ID, ved at putte f.eks?navn=jacob&id=1234 for enden af URL'en.<p> } else { %> Hej kære = navnparameter %>! Godt at høre fra dig!<p> } if (idparameter == null) { %> Du angav ikke noget ID. Gyldige ID er fra 1 til 2000. } else { int id = Integer.parseInt(idParameter); %> Du angav et ID på = id %>. if (id <= 0) out.print("det er for lille."); else if (id >2000) out.print("det er for stort."); else out.print("det er et gyldigt ID."); } %> </body> </html>

</p> Formularer <p>hvad foretrækker og interaktive du at programmere i<br sider />(radioknapper): <input type="radio" name="foretr_prg" value="c"/>c <input type="radio" name="foretr_prg" value="cpp"/>c++ <input type="radio" name="foretr_prg" value="java" checked="checke </p> <p>hvad kan du programmere i<br />(afkrydsningsfelter): <input type="checkbox" name="kan_prg" value="c" checked="checke <input type="checkbox" name="kan_prg" value="cpp" />C++ <input type="checkbox" name="kan_prg" value="java" checked="checke </p> <p>hvilken ret foretrækker du (valgliste): <br /> <select name="foretr_spise"> <option selected="selected">spaghetti med kødsovs</option> <option>pizza</option> <option>ostefondue</option> </select> </p> <p>hvilke retter kan du spise (valgliste): <br /> <select name="kan_spise" size="2" multiple="multiple"> <option value= spa selected="selected">spaghetti med kødsovs</ <option value= piz selected="selected">pizza</option> <option value= ost >Ostefondue</option> </select> </p> <p> <input type="reset" value="nulstil"/> <input type="image" src="sun_java.png" name="javaknap" value="kaff <input type="submit" name="indsendknap" value="indsend data"/> </p> </form>

Åben Dokumentlicens Dette foredragsmateriale er under Åben Dokumentlicens (ÅDL) Du har derfor lov til frit at kopiere dette værk Bruger du dele af værket i et nyt værk, skal de dele, der stammer fra dette værk, igen frigives under ÅDL Den fulde licens kan ses på http://www.sslug.dk/linuxbog/licens.html