Το μάθημα «Τεχνολογίες Διαδικτύου» έχει ενταχθεί στο δεύτερο επίπεδο μαθημάτων. 

Στόχοι μαθήματος: Το μάθημα περιλαμβάνει προχωρημένα θέματα που αφορούν τεχνολογίες διαδικτύου βασισμένες στη γλώσσα προγραμματισμού Java. Συγκεκριμένα, παρουσιάζονται τεχνολογίες (Java 2 Platform Enterprise Edition - J2EE), μεθοδολογία και λογισμικό για την ανάπτυξη ολοκληρωμένων εφαρμογών. Ιδιαίτερη έμφαση δίνεται σε παραδείγματα και στην υλοποίηση βασικών τμημάτων διαδικτυακών εφαρμογών (web-based applications).

Διδακτικές ενότητες: Οι διδακτικές ενότητες του μαθήματος φαίνονται στον ακόλουθο πίνακα: 

     Ενότητα 1
  • Εισαγωγή στις Τεχνολογίες Διαδικτύου

  • Επανάληψη: HTML, Βασικές αρχές προγραμματισμού – Java.

     Ενότητα 2
  • Αρχιτεκτονικές Διαδικτυακών Εφαρμογών: Client-Server  αρχιτεκτονική, n-tier αρχιτεκτονική.

  • Το πρωτόκολλο HTTP.

  • Επεξεργασία στην πλευρά του Πελάτη/Διακομιστή

  • Δυναμικές Ιστοσελίδες

  • Παρουσίαση Λογισμικού: Apache HTTP Server, Apache Tomcat, Netbeans Java IDE.

     Ενότητα 3

Μικροεφαρμογές Java (Java  Applets) 

  • Εισαγωγή στα Applets, Κύκλος ζωής Applet, Γραφικά (GUIs), Διαχειριστής Διάταξης, Ακροατής Συμβάντων.

     Ενότητα 4

Σύνδεση με Βάση Δεδομένων – Java Database Connectivity (JDBC) 

  • Εισαγωγή στο JDBC, Οδηγοί JDBC, Εγκατάσταση σύνδεσης με ΒΔ, Εκτέλεση SQL ερωτημάτων και διαχείριση αποτελεσμάτων (ResultSet και ResultSetMetaData), Προετοιμασμένες δηλώσεις, Συναλλαγές, Αποθηκευμένες Διαδικασίες, Παραδείγματα.

     Ενότητα 5

Java Servlets 

  • Η Δομή ενός Servlet, Ο κύκλος ζωής ενός Servlet, Υποστήριξη Servlets, Μέθοδοι doMethod, HTTP Αίτηση/Απόκριση, Servlets και σύνδεση με βάση δεδομένων, Παραδείγματα.

     Ενότητα 6

Σύνοδοι (Sessions) 

  • Εισαγωγή στις συνόδους, Ανίχνευση συνόδου, Αντικείμενα συνόδου και εφαρμογής, Παραδείγματα

Cookies 

  • Εισαγωγή στα Cookies, Εφαρμογές, Αποστολή και λήψη Cookies, Cookies Συνόδου, Παραδείγματα.

     Ενότητα 7

Java Server Pages 

  • Εισαγωγή στην τεχνολογία JSP, Σύγκριση JSP με άλλες τεχνολογίες, Σύνταξη JSP, JSP Εκφράσεις-Δηλώσεις-Scriptlets-Οδηγίες-Σχόλια, Κώδικας Java σε JSP, Σύνοδος μεταξύ σελίδων JSP, JSP και σύνδεση με βάση δεδομένων, Παραδείγματα.

     Ενότητα 8

Εισαγωγή στην XML 

  • Τι είναι η XML, Ετικέτες, Στοιχεία και Ιδιότητες, Σύνταξη, XML Αρχεία, DTD, Έγκυρα XML έγγραφα, Namespaces.

XML και Java 

  • Εισαγωγή, Java API για την επεξεργασία XML εγγράφων (JAXP), Simple API για XML έγγραφα (SAX), Document Object Model (DOM), Εγγραφή και ανάγνωση προς/από XML έγγραφο.

     Ενότητα 9

Ετικέτες JSP (JSP Tags) 

  • JSP Standard Tag Library (JSTL), Core/XML/SQL βιβλιοθήκες ετικετών, Custom tags.

     Ενότητα 10

Web Services 

  • Υπηρεσίες Διαδικτύου με JAX-RPC, Βασικά στοιχεία JAX-RPC, Δημιουργία υπηρεσίας και πελάτη, Υποστηριζόμενοι τύποι δεδομένων, Αποστολή και απόκριση σε αίτηση, Παραδείγματα.

 

Προαπαιτούμενες γνώσεις: Καλή γνώση HTML και SQL. Πολύ καλή γνώση βασικών αρχών προγραμματισμού και βάσεων δεδομένων. Γνώση της γλώσσας προγραμματισμού Java. Γνώση ανάπτυξης βάσης δεδομένων με σύστημα διαχείρισης ΒΔ (πχ Access, MySQL, MS SQL Server κ.α).

 

Επιθυμητές γνώσεις:

 

Βιβλιογραφία:

  1. The Java Tutorial, http://java.sun.com/docs/books/tutorial/

  2. J2EE Tutorial, http://java.sun.com/j2ee/1.4/docs/tutorial/doc/

  3. Core Servlets and JavaServer Pages: Volume I: Core Technologies, 2nd Edition, Prentice Hall PTR, 2003.

  4. Java for the Web with Servlets, JSP and EJB: A Developer's Guide to J2EE Solutions, New Riders Publishing, 2002.

  5. JavaServer Pages, Second Edition, Addison Wesley, 2003.

  6. Servlets and JavaServer Pages: The J2EE Technology Web Tier, Addison Wesley, 2003.

  7. JavaServer Pages, 3rd Edition,  O'Reilly, 2003.

  8. Designing Web Services with the J2EE 1.4 Platform JAX-RPC, SOAP and XML Technologies, Addison Wesley, 2004.