απορια σε java

Συζητήσεις για γλώσσες προγραμματισμού και θέματα σχετικά με προγραμματισμό.
Feth
Kilobyte level
Kilobyte level
Posts: 263
Joined: Fri Apr 24, 2009 5:51 pm
Academic status: 4th year
Gender:
Location: Γλυφάδα, Αθήνα
Contact:

Re: απορια σε java

Post by Feth » Fri Nov 26, 2010 8:34 pm

Ναι σωστά, μπορείς να το κάνεις κι έτσι. Μπορείς να το κάνεις βέβαια κι όπως σου είπα πριν (με εκχώρηση των τιμών που θες σε τοπικές μεταβλητές μέσα στη συνάρτηση, ώστε να μην επηρεαστούν τα μέλη του αντικειμένου σου) που μου φαίνεται πιο απλό/εύκολο.
Image
Facebook Profile
God is Real, unless declared Integer.
User avatar
abujafar
Mbyte level
Mbyte level
Posts: 651
Joined: Wed Dec 03, 2008 2:49 am
Academic status: Alumnus/a
Gender:
Location: Marmaras

Re: απορια σε java

Post by abujafar » Fri Nov 26, 2010 8:38 pm

Feth wrote:
Scorpion311 wrote:εγω θελω να κανω κατι στον b χωρις να αλλαξει ο a. θελω να αλλαξω μια τιμη να υπολογισω κατι και να γυρισω στην αρχικη κατασταση χωρις να εχει γινει καποια αλλαγη...γινεται αυτο?
Τα αντικείμενα στη Java by default περνιούνται by Reference (άρα οι τιμές των μεταβλητών τους αλλάζουν όταν τις πειράζεις σε μία συνάρτηση). Αν δεν θες να αλλάξουν, πολύ απλά θα περάσεις τις τιμές που θες (του αντικειμένου) σε κάποιες άλλες τοπικές μεταβλητές μέσα στη συνάρτηση και θα κάνεις τον υπολογισμό σου με αυτές.
ิัBy value περνιουνται απλα επειδη η Java χρησιμοποιει αναφορες , αντιγραφεται η αναφορα και νομιζεις οτι περνιουνται by Reference.
Νομιζω δηλαδη. :-p
Feth
Kilobyte level
Kilobyte level
Posts: 263
Joined: Fri Apr 24, 2009 5:51 pm
Academic status: 4th year
Gender:
Location: Γλυφάδα, Αθήνα
Contact:

Re: απορια σε java

Post by Feth » Fri Nov 26, 2010 8:45 pm

abujafar wrote:By value περνιουνται απλα επειδη η Java χρησιμοποιει αναφορες , αντιγραφεται η αναφορα και νομιζεις οτι περνιουνται by Reference.
Νομιζω δηλαδη. :-p
Ah right έχεις δίκιο, τα 5ωρα C# φταίνε.. Sorry :roll:
Image
Facebook Profile
God is Real, unless declared Integer.
User avatar
abujafar
Mbyte level
Mbyte level
Posts: 651
Joined: Wed Dec 03, 2008 2:49 am
Academic status: Alumnus/a
Gender:
Location: Marmaras

Re: απορια σε java

Post by abujafar » Fri Nov 26, 2010 8:57 pm

Feth wrote:
abujafar wrote:By value περνιουνται απλα επειδη η Java χρησιμοποιει αναφορες , αντιγραφεται η αναφορα και νομιζεις οτι περνιουνται by Reference.
Νομιζω δηλαδη. :-p
Ah right έχεις δίκιο, τα 5ωρα C# φταίνε.. Sorry :roll:
Traitor :-D
User avatar
Scorpion311
Kilobyte level
Kilobyte level
Posts: 379
Joined: Sat Jun 06, 2009 12:11 pm
Academic status: 4th year
Gender:

Re: απορια σε java

Post by Scorpion311 » Sat Nov 27, 2010 12:39 am

ευχαριστω πολυ παιδια !!
User avatar
Scorpion311
Kilobyte level
Kilobyte level
Posts: 379
Joined: Sat Jun 06, 2009 12:11 pm
Academic status: 4th year
Gender:

Re: απορια σε java

Post by Scorpion311 » Sat Nov 27, 2010 2:36 pm

sry για το διπλο ποστ,αλλα το αλλαξα ολο το προγραμμα,δεν μετακινω objects και το κανω με πινακες,παλι το ιδιο προβλημα εχω... :-(
Feth
Kilobyte level
Kilobyte level
Posts: 263
Joined: Fri Apr 24, 2009 5:51 pm
Academic status: 4th year
Gender:
Location: Γλυφάδα, Αθήνα
Contact:

Re: απορια σε java

Post by Feth » Sat Nov 27, 2010 2:56 pm

Scorpion311 wrote:sry για το διπλο ποστ,αλλα το αλλαξα ολο το προγραμμα,δεν μετακινω objects και το κανω με πινακες,παλι το ιδιο προβλημα εχω... :-(
Κάνε post τον κώδικά σου :-D

Αν στη συνάρτηση περνάς τους πίνακες ως ορίσματα τότε λογικό είναι, αν περνάς ξεχωριστά τις μεταβλητές τότε θα έπρεπε να λειτουργεί όπως το θες.
Image
Facebook Profile
God is Real, unless declared Integer.
User avatar
Scorpion311
Kilobyte level
Kilobyte level
Posts: 379
Joined: Sat Jun 06, 2009 12:11 pm
Academic status: 4th year
Gender:

Re: απορια σε java

Post by Scorpion311 » Sat Nov 27, 2010 3:11 pm

ναι το βρηκα,μαλλον δλδ :-p
User avatar
barbarosa
Gbyte level
Gbyte level
Posts: 1033
Joined: Thu Dec 21, 2006 10:11 pm
Academic status: N>4
Gender:

Re: απορια σε java

Post by barbarosa » Mon Nov 29, 2010 4:50 pm

Μπορεί κάποιος να μου πει ένα API με το οποίο μπορώ να χειριστώ αρχεία xls ή ods? (Είναι τα αρχεία λογιστικών φύλλων)
Θέλω να χειριστώ ένα αρχείο με αριθμούς, ημερομηνίες και ελληνικές λέξεις/φράσεις.
User avatar
abujafar
Mbyte level
Mbyte level
Posts: 651
Joined: Wed Dec 03, 2008 2:49 am
Academic status: Alumnus/a
Gender:
Location: Marmaras

Re: απορια σε java

Post by abujafar » Mon Nov 29, 2010 6:18 pm

barbarosa wrote:Μπορεί κάποιος να μου πει ένα API με το οποίο μπορώ να χειριστώ αρχεία xls ή ods? (Είναι τα αρχεία λογιστικών φύλλων)
Θέλω να χειριστώ ένα αρχείο με αριθμούς, ημερομηνίες και ελληνικές λέξεις/φράσεις.
Αν και νομιζω μπορεις να το ανοιξεις οπως ενα οποιοδηποτε αρχειο και θα στο βγαλει plain text αλλα θα ειναι ταλαιπωρια αυτο.

First google resut
Java Excel API - A Java API to read, write, and modify Excel spreadsheets
User avatar
barbarosa
Gbyte level
Gbyte level
Posts: 1033
Joined: Thu Dec 21, 2006 10:11 pm
Academic status: N>4
Gender:

Re: απορια σε java

Post by barbarosa » Mon Nov 29, 2010 7:41 pm

Ναι το είδα και γω αυτό και θα το δοκιμάσω, απλώς επειδή δεν θα έχω πολύ χρόνο όταν καθήσω ν ασχοληθώ μ αυτό που θέλω να κάνω, θα ήθελα να ξέρω αν κάποιος έχει δοκιμάσει κάποιο API στο παρελθόν κι αν υπάρχει πιθανότητα να έχω πρόβλημα με τα ελληνικα διότι πρώτη φορά θ ασχοληθώ με excel + Java και θέλω να καλύψω όλα τα πιθανά ενδεχόμενα...
User avatar
cyberpython
Mbyte level
Mbyte level
Posts: 654
Joined: Wed Nov 21, 2007 8:18 pm
Academic status: Alumnus/a
Gender:
Location: Αθηνα
Contact:

Re: απορια σε java

Post by cyberpython » Mon Nov 29, 2010 8:34 pm

barbarosa wrote:Μπορεί κάποιος να μου πει ένα API με το οποίο μπορώ να χειριστώ αρχεία xls ή ods? (Είναι τα αρχεία λογιστικών φύλλων)
Θέλω να χειριστώ ένα αρχείο με αριθμούς, ημερομηνίες και ελληνικές λέξεις/φράσεις.
Τα αρχεία ods είναι είναι αρχεία ZIP που περιέχουν αρχεία XML με το περιεχόμενο του εγγράφου. Τα δεδομένα περιέχονται στο content.xml, οπότε ρίξε μια ματιά σε αυτό το αρχείο για να δεις πως είναι δομημένο το XML shema.

Μετά δουλεύεις με JAXP και JAXB.
User avatar
barbarosa
Gbyte level
Gbyte level
Posts: 1033
Joined: Thu Dec 21, 2006 10:11 pm
Academic status: N>4
Gender:

Re: απορια σε java

Post by barbarosa » Mon Nov 29, 2010 9:39 pm

Πολύ χρήσιμη πληροφορία thanks :-D
User avatar
Ganther
Wow! Terabyte level
Wow! Terabyte level
Posts: 2273
Joined: Fri Jun 18, 2004 9:31 am
Academic status: 3rd year
Gender:

Re: απορια σε java

Post by Ganther » Fri Dec 03, 2010 2:39 pm

barbarosa wrote:Ναι το είδα και γω αυτό και θα το δοκιμάσω, απλώς επειδή δεν θα έχω πολύ χρόνο όταν καθήσω ν ασχοληθώ μ αυτό που θέλω να κάνω, θα ήθελα να ξέρω αν κάποιος έχει δοκιμάσει κάποιο API στο παρελθόν κι αν υπάρχει πιθανότητα να έχω πρόβλημα με τα ελληνικα διότι πρώτη φορά θ ασχοληθώ με excel + Java και θέλω να καλύψω όλα τα πιθανά ενδεχόμενα...
Tωρα το ειδα. Ειχα δουλεψει με Jexcel api και δεν ειχα κανενα προβλημα με τα ελληνικα! :smt023
Και ειναι πολυ ευκολο δεν θα χρειαστει να ασχοληθεις πολυ.
User avatar
barbarosa
Gbyte level
Gbyte level
Posts: 1033
Joined: Thu Dec 21, 2006 10:11 pm
Academic status: N>4
Gender:

Re: απορια σε java

Post by barbarosa » Mon Feb 07, 2011 7:29 pm

Μπορεί να ακουστεί χαζό αλλά είναι κάτι που δεν έχω ξεκαθαρίσει και χρειάζεται να μάθω την αλήθεια.
Έστω ότι έχουμε ενα TCP Socket ανάμεσα σε 2 εφαρμογούλες java και έστω ότι έχουμε έναν PrintWriter πάνω στο OutputStream από τη μια κι έναν Scanner πάνω στο InputStream απο την άλλη για ανταλαγή δεδομένων.
Θέλω να στείλω 2 γραμμές από τη μια εφαρμογή στην άλλη. Έστω
Γραμμή1
Γραμμή2

Από την πλευρά του παραλήπτη θέλω περιοδικά να ξυπνάει ένα thread και να κοιτάει αν υπάρχουν νέα δεδομένα στο ρεύμα. Η απορία μου είναι η εξής. Αν τη στιγμή που το πρόγραμμα από τη μια πλευρά έχει γράψει τη μία μόνο γραμμή το πρόγραμμα από την άλλη πάει να διαβάσει τι θα γίνει? Για την πρώτη γραμμή είμαστε οκ αλλά με την δεύτερη τι θα γίνει? Θα περιμένει ή πρέπει να το χειριστώ εγώ ώστε να μην πεταχτεί κανα exception?
User avatar
nachos
Gbyte level
Gbyte level
Posts: 1252
Joined: Mon Aug 21, 2006 4:28 pm
Academic status: Alumnus/a
Gender:
Location: Brachamee City

Re: απορια σε java

Post by nachos » Mon Feb 07, 2011 10:01 pm

Από τη στιγμή που αυτός που "ακούει" χρησιμοποιεί τη Scanner, διαβάζει μέχρι να βρεί cr/lf. Έπειτα, επειδή η κλήση read του socket είναι blocking, θα περιμένει μέχρις ότου κάποτε να στείλεις δεύτερη γραμμη.

Edit: Είναι καλή πρακτική πάντως, αν δεν θέλεις να στέλνεις streams από data, να κλείνεις τις συνδέσεις σου μετά την αποστολή και να ξανανοίγεις όταν θελήσεις να ξαναστείλεις.
Nothing is impossible for the man who doesn't have to do it himself
User avatar
S.a.kiss.007
Mbyte level
Mbyte level
Posts: 659
Joined: Wed Nov 28, 2007 2:24 am
Academic status: 4th year
Gender:
Location: Κρήτη (πνευματικά...)
Contact:

Re: απορια σε java

Post by S.a.kiss.007 » Tue Sep 20, 2011 2:59 pm

Φτιάχνω μια εφαρμογή, με λίγα λόγια, που κάνει πολλά HTTP Cοnnections και "αναλύει" τον κώδικα αυτών των σελίδων που ζητάει.
Όταν την δοκίμαζα στην αρχή με λίγα δεδομένα, δεν είχα κάποιο πρόβλημα, αλλά όταν έφτασα σε πραγματικό όγκο δεδομένων, έχω πολλά errors 503 από τον server και SocketExceptions για unreachable network.
Τι λέτε πως μπορεί να φταίει;
Βασικά σχετίζονται αυτά τα δύο exceptions μεταξύ τους? φαντάζομαι ναι, γιατί εμφανίστηκαν ταυτόχρονα και περιγράφουν ουσιαστικά το ίδιο πρόβλημα από την πλευρά του server και του client (me) αντίστοιχα.
User avatar
netharis
Venus Former Team Member
Posts: 1845
Joined: Sun Jul 15, 2007 2:37 pm
Academic status: Alumnus/a
Gender:
Location: Seattle, Washington
Contact:

Re: απορια σε java

Post by netharis » Tue Sep 20, 2011 3:58 pm

S.a.kiss.007 wrote:Φτιάχνω μια εφαρμογή, με λίγα λόγια, που κάνει πολλά HTTP Cοnnections και "αναλύει" τον κώδικα αυτών των σελίδων που ζητάει.
Όταν την δοκίμαζα στην αρχή με λίγα δεδομένα, δεν είχα κάποιο πρόβλημα, αλλά όταν έφτασα σε πραγματικό όγκο δεδομένων, έχω πολλά errors 503 από τον server και SocketExceptions για unreachable network.
Τι λέτε πως μπορεί να φταίει;
Βασικά σχετίζονται αυτά τα δύο exceptions μεταξύ τους? φαντάζομαι ναι, γιατί εμφανίστηκαν ταυτόχρονα και περιγράφουν ουσιαστικά το ίδιο πρόβλημα από την πλευρά του server και του client (me) αντίστοιχα.
Δουλεύεις με threading για να κάνεις τα requests? Για πόσα connection attempts/sec μιλάμε;
"Χτυπάς" τον ίδιο server κάθε φορά;

Συνήθως το 503 έρχεται σαν μέτρο "προστασίας" σε ένα συγκεκριμένο host που ανοίγει πάρα πολλά http streams στον ίδιο server.
Image
Resistance is futile. Join the foss-side now!
"UNIX is very simple, it just needs a genius to understand its simplicity." - Dennis Ritchie
"The things that I want, by Max Payne. A smoke. A whiskey. For the sun to shine. I want to sleep, to forget. To change the past. Unlimited ammo and a license to kill. But right then, more than anything, I wanted her."
User avatar
S.a.kiss.007
Mbyte level
Mbyte level
Posts: 659
Joined: Wed Nov 28, 2007 2:24 am
Academic status: 4th year
Gender:
Location: Κρήτη (πνευματικά...)
Contact:

Re: απορια σε java

Post by S.a.kiss.007 » Tue Sep 20, 2011 4:58 pm

Ναι τον ίδιο server βαράω :-p Αυτό που λες Χάρη για το 503 το σκέφτηκα και μάλλον ισχύει, γιατί έκανα και σε διαφορετικούς servers με τον ίδιο αριθμό δεδομένων και είχα πολύ λιγότερα errors. Για attempts/sec δεν ξέρω, ούτε έχω μετρήσει, ούτε έχω βάλει αναγνωριστικά (κάποια printf δλδ για να μετράω), αλλά φαντάσου της τάξεως των 3-4/sec μαζί με την "επεξεργασία" των δεδομένων.
Όχι threads δεν έχω χρησιμοποιήσει γιατί κάνει άλλα πράγματα μαζί η εφαμοργή, άρα το "crawling" το 'χω όλο σε ένα.

Θα βοηθούσε αν έφτιαχνα άλλο thread για κάθε attempt? Φοβόμουν μην πέσει η γενικότερη απόδοση του συστήματος.
User avatar
netharis
Venus Former Team Member
Posts: 1845
Joined: Sun Jul 15, 2007 2:37 pm
Academic status: Alumnus/a
Gender:
Location: Seattle, Washington
Contact:

Re: απορια σε java

Post by netharis » Tue Sep 20, 2011 7:06 pm

Αφού δεν δουλεύεις με threads, φαντάζομαι έχεις ένα loop, που κάνει κάποιο GET, πέρνει μία απάντηση απο το Socket και αρχίζει επεξεργασία/analysis κτλ;

To θέμα είναι οτι γίνεσαι throttle απο τον ίδιο το server, και όχι απο τα resources του δικού σου μηχανήματος. Πρέπει να δεις περίπου μέχρι πόσα reqs/sec μπορεί να απαντήσει ο server, και να κάνεις adjust το κώδικα σου.
Θα πρότεινα αρχικά το receiving μέρος να μπεί σε ένα thread μόνο του, και να το ελέγχεις απο το κύριο πρόγραμμα.

Δώσε μου περισσότερα info τι περίπου κάνεις, να το δομήσουμε λίγο καλύτερα.
Image
Resistance is futile. Join the foss-side now!
"UNIX is very simple, it just needs a genius to understand its simplicity." - Dennis Ritchie
"The things that I want, by Max Payne. A smoke. A whiskey. For the sun to shine. I want to sleep, to forget. To change the past. Unlimited ammo and a license to kill. But right then, more than anything, I wanted her."
User avatar
Ισοβίτης
Venus Former Team Member
Posts: 1262
Joined: Sat Apr 21, 2007 5:45 pm
Gender:
Location: Πίσω από τα σίδερα
Contact:

Re: απορια σε java

Post by Ισοβίτης » Tue Sep 20, 2011 9:49 pm

Τι λέει το stack trace?
Συγχώρα με που δεν καταλαβαίνω τι λένε τα κομπιούτερς κι οι αριθμοί...

Image

Find me: Image Image Image Image Image
User avatar
Zifnab
Venus Former Team Member
Posts: 7581
Joined: Tue Nov 15, 2005 2:42 am
Academic status: MSc
Gender:
Location: Connecticut
Contact:

Re: απορια σε java

Post by Zifnab » Wed Sep 21, 2011 2:16 am

λογικά χρειάζεσαι κάποιο sleep..
Post Reply

Return to “Προγραμματισμός”