Κεφάλαιο 1. Βασικά Στοιχεία της Java... 13

Σχετικά έγγραφα
Java Μέρος Ι Αντικειμενοστρεφής Προγραμματισμός - 7

Περιεχόμενα ΜΕΡΟΣ ΠΡΩΤΟ. Πρόλογος... 13

Διαδικτυακές Εφαρμογές Ενότητα 1: JPA

Διαδικτυακές Εφαρμογές. Ενότητα 2: Enterprise Java Beans και Java Server Faces Μιχάλας Άγγελος Βούρκας Δημήτριος Τμήμα Μηχανικών Πληροφορικής ΤΕ

Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης

Η Υλοποίηση της Επικοινωνίας. Κατανεµηµένα Συστήµατα

MySQL + Γλώσσα Προγραμματισμού. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Εισαγωγή στη C# και. Σημειώσεις Σεμιναρίου Επιμέλεια: Βασίλης Κόλιας. το.net 4.0

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15

Περιεχόµενα. Πρόλογος...15

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών

MySQL + Γλώσσα Προγραμματισμού. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο

Ειδικά Θέματα Προγραμματισμού

Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ

Διαδικτυακές Εφαρμογές Ενότητα 7: Προσπέλαση ΒΔ με το JDBC

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED αντικειμενοστραφής προγραμματισμός ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο)

Αντικειμενοστρεφής Προγραμματισμός

Περιεχόμενα. Πρόλογος... xiii

Ταχύτητα, Απλότητα & Αξιοπιστία

ΜΑΘΗΜΑ: Διαδικτυακές Εφαρμογές

. Μεθοδολογία Προγραμματισμού. Abstract Κλάσεις και Interfaces. Νικόλαος Πεταλίδης. Εισαγωγή Εαρινό Εξάμηνο 2014

Περιεχόμενα. Περιεχόμενα. Πρόλογος...17

Αντικειμενοστρεφής Προγραμματισμός

Δομή παρουσίασης. Σχεδιασμός και υλοποίηση συστήματος παρακολούθησης και ελέγχου πωλητών και δημιουργία εφαρμογής σε έξυπνο κινητό

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 8 η Διάλεξη: Προγραμματισμός στην πλευρά του εξυπηρετητή: Τεχνολογία Java Server Pages (JSP)

ΠΡΟΧΩΡΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Χαρίδημος Κονδυλάκης Εισαγωγή

Βασικές Έννοιες Web Εφαρμογών

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED σχεδιασμός ιστοσελίδας ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ

Κεφάλαιο 1. Νήματα (Threads). Time Sharing

Γενικά (για τις γραπτές εξετάσεις)

Διαδικτυακές Εφαρμογές Ενότητα 5: Servlets και JSPs

Τίτλος Πακέτου Certified Computer Expert-ACTA

Τεχνικός Εφαρμογών Πληροφορικής

Λειτουργικά Συστήματα Η/Υ

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο

Διάλεξη Εισαγωγή στη Java, Μέρος Γ

Εισαγωγή στα Λειτουργικά Συστήματα

Αστέριος Κατσιφοδήμος Γιώργος Νικολάου Κώστας Βρυώνη. ΕΠΛ 428 Προγραμματισμός Συστημάτων 16/04/07

Αρχές Τεχνολογίας Λογισμικού Εργαστήριο

Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες:

Τεχνολογίες Διαδικτύου. Server Side Scripting I PHP

CORBA. Αρχιτεκτονική και 3-tier 3. εφαρµογές. Β. Φλώρος. Μαρτάκος. Τµήµα Πληροφορικής και Τηλεπικοινωνιών Εθνικό και Καποδιστιακό Πανεπιστήµιο Αθηνών

Εισαγωγή στην ASP.NET. Σημειώσεις Σεμιναρίου Επιμέλεια: Βασίλης Κόλιας 4.0

Ορισμοί Σχεσιακού Μοντέλου και (απλές)τροποποιήσεις Σχέσεων στην SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης. Μικρομεσαίες Επιχειρήσεις και Καινοτομία

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions)

Διδάσκων: Παναγιώτης Ανδρέου

Σύγχρονα εργαλεία και τεχνολογίες ανάπτυξης I.S. Το Microsoft.NET

Εργαλεία ανάπτυξης εφαρμογών internet Ι

Περιεχόμενα. Πρόλογος... 17

Οντοκεντρικός Προγραμματισμός

Τεχνολογίες Ανάπτυξης Εφαρμογών στο WEB

Π ΤΥ Χ ΙΑ Κ Η ΕΡΓΑΣΙΑ

Introduction to JAX-WS. Φοιτητής : ηµόπουλος Κωνσταντίνος

Αποτελεί ισχυρό εργαλείο, µε υψηλή απόδοση & αποτελεσµατικότητα.

8. Μέθοδοι (Methods)

Περιεχόμενα ΕΥΧΑΡΙΣΤΙΕΣ ΕΙΣΑΓΩΓΗ Σχετικά με τους συγγραφείς...24

Ανάπτυξηλογισμικού υλοποίησης του ανοικτού πρότυπου EPCALEv1.1 για εφαρμογές RFID

Α.Τ.Ε.Ι. ΚΑΒΑΛΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

(Regular Expressions) ΤΕΙΘ-ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ: ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ/ ΧΕΙΜ

Κανονικές εκφράσεις ή παραστάσεις (Regular Expressions) 3 ο Εργαστήριο ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - ΕΡΓΑΣΤΗΡΙΟ

JAX-RPC (Web Services) ΕΠΛ 425: Τεχνολογίες ιαδικτύου Μιχάλης Έλληνας

Τι είναι η Spring. Η Spring είναι ένα ελεύθερο (open source) περιβάλλον εργασίας για εφαρμογές Java. Μπορεί να περιγραφεί ως:

Δυναμικές Ιστοσελίδες Προγραμματισμός στην πλευρά του client

Δείχτες Επιτυχίας και Δείχτες Επάρκειας

Πτυχιακή εργασία. Ανάπτυξη παιχνιδιού πολλών παικτών

Μέρος Ι: Εγκατάσταση και ιαμόρφωση των MySQL, Apache και PHP

Εργαστήριο 02: Προγραμματισμός με Γενικούς Τύπους (JAVA Generics) ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι

Αρχές Τεχνολογίας Λογισμικού

Μάθημα: Συστήματα Διαχείρισης Βάσεων Δεδομένων Αναλυτικό Διάγραμμα Μελέτης

Οντοκεντρικός Προγραμματισμός

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet.

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript

Γλώσσες Προγραμματισμού

Προγραμματισμός ΙΙ (Java) 6. Διαχείριση δεδομένων

Υπηρεσίες Ιστού (Web Services) Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών

Εφαρμογή Βάσης Δεδομένων για την Εθελοντική Αιμοδοσία στο ΑΤΕΙ-Θ

Vodafone Business Connect

Λιόλιου Γεωργία. ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήµατα

Περιεχόμενα. Περιεχόμενα

ΜΕΡΟΣ ΠΡΩΤΟ: Θεωρητική Προσέγγιση...15

"Αθηνά" - Ερευνητικό Κέντρο Καινοτομίας στις Τεχνολογίες της Πληροφορίας, των Επικοινωνιών και της Γνώσης

ΗΛΕΚΤΡΟΝΙΚΟ ΚΑΤΑΣΤΗΜΑ

Εισαγωγή στη J2EE. Μέρος 2

Η Βίβλος σχετικά με το JDBC. Περιέχει τρία βασικά tutorials στα οποία θα βασιστεί το μάθημα και περιγράφει όλες τις τάξεις και τις μεθόδους που

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Constructors

Ειδικά Θέματα Προγραμματισμού

PHP 1. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Δ. Ζήνδρος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Μεθοδολογία Προγραμματισμού

Αντικείμενα στη Java. Παύλος Εφραιμίδης. Java Αντικείμενα στη Java 1

Εφαρµογές διαδικτύου µε PHP

Υπολογιστική Νέφους: Εργαστήριο ΙI Υπηρεσία αποθήκευσης και Ανάπτυξη διαδικτυακής εφαρμογής

ΚΕΦΑΛΑΙΟ 2: Τύποι δεδομένων και εμφάνιση στοιχείων...33

Regular Expressions ΓΛΩΣΣΙΚΉ ΤΕΧΝΟΛΟΓΊΑ

Transcript:

Περιεχόμενα Πρόλογος... 5 Κεφάλαιο 1. Βασικά Στοιχεία της Java.... 13 Τύποι Δεδομένων, Μεταβλητές και Πίνακες... 13 Τελεστές και Δομές Επιλογής Επανάληψης... 16 Κλάσεις και Μέθοδοι... 21 Πακέτα και Διασυνδέσεις... 27 Χειρισμός Εξαιρέσεων... 31 Συλλογές (Collections)... 36 Μερικά ιδιώματα της Java... 38 Κεφάλαιο 2. Γενικεύσεις(Generics).... 45 Εισαγωγή στα Generics... 45 Κλάση με χρήση Generics... 47 Generics με παραπάνω παραμέτρους... 52 Οριοθετημένοι Τύποι (Bounded Types)... 56 Ο Χαρακτήρας Wildcard (?)... 66 Γενικευμένες μέθοδοι και διασυνδέσεις... 75 Instance of σε γενικεύσεις... 79 Κληρονομικότητα με Γενικεύσεις... 81 Πλεονεκτήματα και Παραδείγματα... 86 Κεφάλαιο 3. Εκφράσεις λάμδα (Lambda Expressions)....101 Συντακτικό... 101 Λειτουργικές Διασυνδέσεις (Functional Interfaces)... 102 Οι εκφράσεις λάμδα σε μπλοκ και ως όρισμα... 105 Αναφορές Μεθόδων και Σύλληψη Μεταβλητών... 109 Λειτουργικές Διασυνδέσεις στο πακέτο util.function... 119 Γενικεύσεις και Εξαιρέσεις με εκφράσεις λ... 121 Ταξινόμηση συλλογής με Lambda Expression... 123

Περιεχόμενα 8 Κεφάλαιο 4. Pattern Matching....129 Εισαγωγή στο πρόβλημα... 129 Regular Expressions(Κανονικές εκφράσεις)... 131 Γνωρίζοντας το περιβάλλον μας... 134 Μια πρώτη ματιά... 135 Μια δεύτερη προσπάθεια... 135 Αυτό ήταν?...... 136 Regex Flavors... 136 Literal Characters(Κυριολεκτικοί χαρακτήρες)... 137 Ειδικοί χαρακτήρες (Meta-characters)... 137 Διαφυγή (Backslash \ )... 138 Μη εκτυπώσιμοι χαρακτήρες(non-printable characters)... 140 Ο μπαλαντέρ (The dot character)... 142 Character classes(κλάσεις χαρακτήρων)... 143 Ποσοδείκτες (Quantifiers)... 148 Anchors... 155 Groups... 158 Alternation (χαρακτήρας )... 160 LookAhead και LookBehind assertions... 162 Οι κλάσεις Pattern και Matcher... 168 Συμπεράσματα... 181 Κεφάλαιο 5. Βάσεις Δεδομένων....183 Γενικά για Βάσεις Δεδομένων... 183 Σχεσιακές Βάσεις Δεδομένων... 185 Παράδειγμα Σχεσιακής Βάσης Δεδομένων... 186 Εννοιολογικό Σχήμα ERD... 190 Εντολές δημιουργίας Λογικού Σχεσιακού Σχήματος σε ΣΔΒΔ MySQL... 190 Βελτίωση Λογικού Σχεσιακού Σχήματος... 191 Γραφική απόδοση του λογικού σχεσιακού σχήματος... 192 Java Database Connectivity JDBC... 192 Παράδειγμα JDBC για βάση MySQL ανάπτυξη χωρίς IDE... 194 Παράδειγμα JDBC για βάση Microsoft Access ανάπτυξη χωρίς IDE... 197

9 Java για Λίγους Παράδειγμα JDBC για βάση MySQL ανάπτυξη με NetBeans IDE... 203 CRUD τέσσερις βασικές λειτουργίες για βάσεις δεδομένων... 204 Create... 204 Update (Modify)... 206 Delete... 208 Drivers και Database URL για γνωστά ΣΔΒΔ... 210 Drivers... 210 Database URL... 210 Περισσότερα για την κλάση ResultSet... 211 Μέθοδοι για αλλαγή της τρέχουσας εγγραφής (γραμμής)... 211 Μέθοδοι για άντληση τιμών από την τρέχουσα εγγραφή... 212 ResultSetMetaData... 213 Prepared Statements... 214 Διαγραφή εγγραφών χωρίς prepared statements SQL Injection... 216 Διαγραφή εγγραφών με prepared statements... 217 Κεφάλαιο 6. Νήματα (Threads)....219 Time Sharing... 219 Multi-Tasking... 220 Multi-Threading... 220 Δημιουργία Νήματος... 221 Δημιουργία Νήματος επεκτείνοντας την κλάση Thread... 222 Δημιουργία Νήματος υλοποιώντας το interface Runnable... 224 Διαφορές Σύγκριση... 226 Κεφάλαιο 7. Πολυνηματικότητα (Multithreading)...229 Memory Sharing... 229 Άλλα στοιχεία της πολυνηματικότητας... 230 Συγχρονισμός... 230 Συγχρονισμένες μέθοδοι... 234 Συγχρονισμένα block κώδικα... 235 Μη συγχρονισμός νημάτων από διαφορετικά αντικείμενα... 238 Συγχρονισμός στατικών μεθόδων... 241 Επικοινωνία νημάτων καταστάσεις νημάτων μεταβάσεις... 242

Περιεχόμενα 10 Προτεραιότητες... 245 Βασικές μέθοδοι για τα νήματα... 245 Αδιέξοδα... 246 Κεφάλαιο 8. Βασικές Τεχνολογίες Δικτύου...249 Ορισμοί... 249 Inter Process Communication... 249 Remote Procedure Call... 250 Remote Method Invocation... 250 Sockets... 251 InetAddress... 252 URL και URLConnection... 254 Socket... 260 ServerSocket... 267 Remote Method Invocation... 281 Κεφάλαιο 9. CORBA και RMI-IIOP....293 CORBA... 293 RMI-IIOP... 296 Κεφάλαιο 10. Servlets...303 HTML... 303 HTTP... 307 HTML Forms... 309 CGI Scripting PHP ASP... 311 Servlets... 312 Πρώτο παράδειγμα Servlet Hello World... 314 Δομή Καταλόγων εφαρμογής Servlet και Deploy... 316 Δομή web.xml... 320 Index.html... 321 Δεύτερο παράδειγμα Headers Example... 322 Τρίτο παράδειγμα Λήψη δεδομένων από HTML φόρμα... 326 Τέταρτο παράδειγμα Ενημέρωση βάσης από φόρμα... 335

11 Java για Λίγους Ανάπτυξη Web Servlets με το NetBeans... 341 Cookies... 348 Sessions... 350 Interfaces και Κλάσεις σχετικές με Servlets... 351 Λεπτομερέστερη εξέταση της δομής του web.xml... 352 Annotations... 355 Κεφάλαιο 11. Web Services....357 Web Services... 357 SOAP... 358 Παράδειγμα SOAP WebService (με NetBeans)... 361 Έλεγχος SOAP WebService... 371 Παράδειγμα Client για SOAP WebService (με NetBeans)... 373 REST... 382 Βασικές έννοιες των REST Web Services... 384 Java API για RESTful Web Services (JAX-RS)... 385 JAX-RS annotations για την επισήμανση μεθόδων... 385 Annotations για προσδιορισμό των ορισμάτων των μεθόδων... 385 Implementations... 386 Reference Implementation... 387 Παράδειγμα REST WebService για READ (με NetBeans)... 387 Παράδειγμα Client για REST WebService για READ (με NetBeans)... 393 Παράδειγμα REST WebService για PUT... 399 Κεφάλαιο 12. Reflection API....405 Εισαγωγή στο πρόβλημα... 405 Τι είναι το Reflection API?... 405 Η αποστολή μας.... 406 Ενάς κόσμος χωρίς reflection.... 406 Μια μικρή σημείωση... 408 Δυνατότητες του reflection... 408 Περιορισμοί και μειονεκτήματα... 409 Μα τι κάνει επιτέλους αυτή η μυστήρια.getclass()?... 410 Η κλάση Class... 410

Περιεχόμενα 12 Γράφοντας την δικία μας cast()... 411 Πως το κάναμε αυτό?... 412 Μα τι κάνει επιτέλους η class.forname()?... 412 Πηγαίνοντας βαθύτερα Method lookup... 413 Η κλάση Method... 414 Καλώντας μεθόδους... 415 Επεξηγώντας τι κάναμε... 416 Καλώντας μεθόδους με παραμέτρους... 417 Παρακάμπτοντας την ενθυλάκωση... 419 Λαμβάνοντας τις επιστρεφόμενες τιμές... 420 Field Lookup... 423 Παρακάμπτοντας την ενθυλάκωση, vol2... 425 Constructors... 426 Constructors με Objects ως παραμέτρους... 427 Constructors με primitives ως παραμέτρους... 428 Καλώντας τον default constructor... 430 Η συνέχεια... 431 Κεφάλαιο 13. Παρουσίαση της JavaFX....433 Εισαγωγή στην JavaFX... 433 Βασικά στοιχεία εφαρμογής JavaFX... 434 Κουμπιά και Διαχείριση Συμβάντων(Events)... 438 Διαχειριστές Διάταξης... 445 Ζωγραφίζοντας με την JavaFX... 454 Περιγραφή βασικών συστατικών... 459 Εικόνες, Εφέ και Μετασχηματισμοί... 469 Δημιουργία και Διαχείριση Menu... 479 Βίντεο και ήχο με JavaFX... 485 JavaFX και CSS... 491 Παράρτημα Α. Εγκατάσταση GlassFish.... 497 Παράρτημα Β. Εγκατάσταση NetBeans.... 507 Βιβλιογραφία... 515