1 / 12

Web-applikationer

Web-applikationer. Arkitektur Applets JSP/Servlets. Web-applikationer - 1. Brugere interagerer med en Web-browser Browsers sender forespørgsler til en Web-server Web-serveren sender et svar som et html-dokument

iris-morris
Download Presentation

Web-applikationer

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Web-applikationer Arkitektur Applets JSP/Servlets IntroJava2006 AAU

  2. Web-applikationer - 1 • Brugere interagerer med en Web-browser • Browsers sender forespørgsler til en Web-server • Web-serveren sender et svar som et html-dokument • Web-serveren kan kommunikere med andre applikationer under udarbejdelse af svaret • Browseren fortolker html-dokumentet Web-browser Klient HTML internet Web-server Server Firewall Applikationer/ Databaser mv. IntroJava2006 AAU

  3. Web-applikationer - 2 • En browser er et program, som henter html-dokumenter fra en server, fortolker html og viser resultatet • En web-server er et program, som lytter efter forespørgsler på html-dokumenter og sender det ønskede html-dokument retur • Html-dokumentet kan være dynamisk, dvs. opbygges af programmer på web-serveren, fx ud fra resultater fra andre applikationer og/eller databaseforespørgsler Web-browser Klient HTML internet Web-server Server Firewall Applikationer/ Databaser mv. IntroJava2006 AAU

  4. Web-applikationer - 3 • Som udgangspunkt eksekveres (næsten) al kode på serveren • Kun præsentation på klienten • Ofte er det ønskeligt at få mere funktionalitet på klienten • Applets er en teknologi, som tillader Java-programmer (med visse begrænsninger) at eksekvere i browseren • En applet er en .class-fil, som hentes over sammen med html-dokumentet og eksekverer i browseren Web-browser Klient HTML (evt. med applet) internet Web-server Server Applikationer/ Databaser mv. Firewall IntroJava2006 AAU

  5. Applet import javax.swing.JApplet; import java.awt.Graphics; public class HelloWorldApplet extends JApplet { public void paint(Graphics g) { super.paint(g); g.drawString("Hello world!", 50, 150); } } <html> <applet code=HelloWorldApplet.class width="200" height="200"> </applet> </html> IntroJava2006 AAU

  6. Applets kører i browseren: <html> <applet code=HelloWorldApplet.class width="200" height="200"> </applet> </html> IntroJava2006 AAU

  7. Applets kan også laves I Net Beans http://www.netbeans.org/kb/50/tutorial-applets.html IntroJava2006 AAU

  8. Problemer med applets • Afhænger af klientens browser • Afhænger af klientens java-version • Kan ikke kommunikerer med klientens filsystem • Ved ‘call-back’ til serveren er firewals ofte et problem • Bruges mest i forbindelse med grafik, fx:http://cg.scs.carleton.ca/~morin/misc/sortalg/eller spil • Også visse homebanking systemer anvender applets til opsætning af sikker kommunikation IntroJava2006 AAU

  9. Servlets Web-browser Klient • Servlets er Java-programmer, som bor og eksekverer på en web-server • Servlets kan svare på forespørgsler fra en browser • Servlets indeholder Java-kode: • Herved kan præsentation og forretningslogik blandes • Servlets bør bruges som grænseflade mellem web-serveren og applikationer • Herved adskilles præsentation (generering af html) fra forretningslogik (Java-kode) • JSP er en udvidelse, som gør det muligt at bruge grafiske værktøjer til web-design og få servlets genereret automatisk (af web-serveren) HTML internet Web-server Java Server Pages Server Servlet Container Servlet Firewall Applikationsserver Java-programmer Database IntroJava2006 AAU

  10. En servlet: Vi skal bruge en masse import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; public class WelcomeServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException{ response.setContentType( "text/html" ); PrintWriter out = response.getWriter(); out.println( "<?xml version = \"1.0\"?>" ); out.printf( "%s%s%s", "<!DOCTYPE html PUBLIC", " \"-//W3C//DTD XHTML 1.0 Strict//EN\"", " \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n" ); out.println( "<html xmlns = \"http://www.w3.org/1999/xhtml\">" ); //--- Vi arver en masse Information til browseren IntroJava2006 AAU

  11. Vi vil ikke skrive sådan noget selv!!! out.println( "<head>" ); out.println( "<title>A Simple Servlet Example</title>" ); out.println( "</head>" ); // body section of document out.println( "<body>" ); out.println( "<h1>Welcome to Servlets!</h1>" ); out.println( "</body>" ); // end XHTML document out.println( "</html>" ); out.close(); // close stream to complete the page } // end method doGet } // end class WelcomeServlet ‘Almindelig’ html IntroJava2006 AAU

  12. Servlets • For at køre servlets skal man have installeret en web-server: Apache Tomcat Server • Om servlets kan man lære på: http://java.sun.com/products/servlet/index.jsp • Om Java Server Pages på: http://java.sun.com/products/jsp/ • NetBeans 5.5 kan håndtere meget af det: http://www.netbeans.org/products/ide/ IntroJava2006 AAU

More Related