Michael Kalochristianakis

Electrical and Computer Engineer




IT is about logic and mathematics. It is also about application, innovation and the biggest and most available library the world has ever seen. And if people focus a little bit, the renowned 'digital gap' not only vanishes but sometimes gets replaced by pure interest for information or even knowledge

so, in a way, IT is about new things and freedom in the modern world. Of course, there is a lot of work but nothing really satisfactory comes too easily : )

IT is best when it is open and freely distributed. Check out these links: Free Software Foundation (FSF), GNU, Debian, Android, Android developers






'father of internet' joins tech leaders in condemning repeal plan

for testing purposes, property of the Museum of Medicine

λύνω

web programming

εργαστήριο 7 - 8: java server pages

  • στην εργαστηριακή άσκηση αυτή θα υλοποιήσετε τις προηγούμενες δύο εργαστηριακές ασκήσεις με την τεχνολογία java server pages

τι πρέπει να ξέρετε:

  • η τεχνολογία java server pages αποτελεί τμήμα της πλατφόρμας java η οποία περιλαμβάνει τεχνολογίες για (α) συσκευές περιορισμένων πόρων (β) σταθμούς εργασίας και επιφάνειας εργασίας (γ) εξυπηρετητών (διαδικτύου, μεσισμικού, βάσης δεδομένων)
  • η τεχνολογία java server pages είναι τεχνολογία που εφαρμόζει προγραμματισμό εξυπηρετητών (server programming) στο πεδίο της διαδικτυακής παρουσίασης (web tier). Η αρχιτεκτονική των εφαρμογών διαδικτύου περιλαμβάνει τα πεδία διαδικτύου (web), μεσισμικού (middleware) και βάσης δεδομένων
  • τα κύρια χαρακτηριστικά της java και συνεπώς της jsp είναι η αντικειμενοστραφής λογική και η ανεξαρτησία από τις υποκείμενες πλατφόρμες. Όπως μια desktop εφαρμογή γραμμένη σε java μπορεί να εκτελείται σε όλες τις πλατφόρμας, έτσι και τα προγράμματα και βιβλιοθήκες που χρησιμοποιούνται από την τεχνολογία jsp μπορούν να εκτελούνται σε όλες τις πλατφόρμες.
  • η ανεξαρτησία από τις υποκείμενες πλατφόρμες επιτυγχάνεται με τη χρήση υποκείμενου στρώματος διεπαφής με το υλικό, την ιδεατή μηχανή (virtual machine) που αποκρύπτει τις λεπτομέρειες του τελευταίου και εκθέτει κοινές προγραμματιστικές διεπαφές
  • για την μεταγλώττιση και την συμπίληση των προγραμμάτων, καθώς και για την λειτουργία των εξυπηρετητών που μπορούν να φιλοξενούν εφαρμογές γραμμένες σε java απαιτείται η εγκατάσταση του περιβάλλοντος εκτέλεσης της γλώσσας (java runtime environment)

τι θα χρειστείτε:

  • γενικές αναφορές σχετικά με τις αρχές και την τεχνολογία java, από τον ιστοχώρο της Oracle
  • τη βασική σύνταξη της jsp και σχετικές πληροφορίες FAQ
  • εργαλείο ολοκληρωμένης ανάπτυξης ιστοσελίδων, πχ dreamweaver, frontapage, κτλ
  • εκκίνηση του application server apache tomcat και χρήση του καταλόγου webapps αντί για το htdocs ή πρόσβαση στον κοινόχρηστο εξυπηρετητή μέσω του putty ssh client που βρίσκεται στο C:

εργαστηριακή άσκηση

  • (A) Υλοποιήστε τις εργαστηριακές ασκήσεις 2 και 3 σε JAVA!
  •  
  • (B) Υποθέστε ότι θέλετε να κατασκευάσετε μια διαδικτυακή διεπαφή για ένα πρόγραμμα υπολογισμού της απόστασης που καλύπτει ένα αντικείμενο σε ελεύθερη πτώση συναρτήσει του χρόνου και των αρχικών συνθηκών ταχύτητας και θέσης του. Κατασκευάστε ιστοσελίδα με όνομα gravity.jsp.
  •  
  • θα περιέχει φόρμα που με τα παρακάτω στοιχεία εισόδου: επιτάχυνση βαρύτητας σε m/s^2, χρόνος πτώσης σε sec, αρχική ταχύτητα σε m/s, αρχικό υψόμετρο αντικειμένου σε m
  • το γραφικό στοιχείο που θα κρατάει την τιμή της επιτάχυνσης της βαρύτητας δεν θα μπορεί να αλλάξει τιμή από τον χρήστη, θα είναι non-editable
  • Η υποβολή της σελίδας θα οδηγεί στην σελίδα calc.jsp η οποία θα χρησιμοποιεί τον τύπο x(t)= - 0.5 * g * t^2 + u0 * t + h, όπου:
    • x(t) είναι η συνάρτηση της απόστασης στο χρόνο
    • g είναι η επιτάχυνση της βαρύτητας
    • u0 είναιη αρχική ταχύτητα
    • h είναι το ύψος από όπου ξεκινά η πτώση
  •  
  • (Γ) Υλοποιήστε το (Β) χρησιμοποιώντας ξεχωριστό πρόγραμμα java για τον υπολογισμό, ο οποίος αντί να γίνεται στην σελίδα calc.jsp θα γίνεται από το πρόγραμμα Calc.java. H δομή του πρόγραμμάτος θα είναι η εξής:
    package lab5;
    
    public class Calc{
    
    	public static void main(String args[]){
    		//έλεγχος υπολογισμού
    		//εκτέλεση gravity(10, 9.81, 0, 0)
    	}
    
    	public float gravity(float t, float g, float u, float h){
    		//υπολογισμός τιμής 
    		return ?;
    	}
    } 
    • γράψτε την υλοποίηση του παραπάνω υπολογισμού
    • συμπληρώστε τη μέθοδο main ώστε το πρόγραμμά σας να εκτελεί τον υπολογισμό gravity όταν τρέξει
    • μεταγλωττίστε με την εντολή javac Calc.java και εκτελέστε το με την εντολή java Calc. Επιβεβαιώστε ότι το πρόγραμμα εκτελείται σωστά
    • χρησιμοποιήστε την κλάση που μόλις γράψετε για τον υπολογισμό από την σελίδα gravity.jsp. Αντιγράψτε την εκτελέσιμη κλάση (.class αρχείο) στον κατάλογο WEB-INF/classes/lab5. Εισάγετε στην σελίδα σας τη δήλωση:
  • < % @ page language="java" import="lab5.*" % >
    .
    August 2004