- Proxmox VE
- Kapnak egy rakás reklámot a Roblox játékosai
- Súlyos adatvédelmi botrányba kerülhet a ChatGPT az EU-ban
- ArchiCAD és Artlantis topik
- Mikrotik routerek
- YouTube
- Mindenki AI-t akar, már 2025-re is eladták a HBM chipeket
- WLAN, WiFi, vezeték nélküli hálózat
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Linux kezdőknek
Új hozzászólás Aktív témák
-
smallmer
őstag
Server oldal:
try {
while (true) {
beerkezoKliens = szerver.accept();
System.out.println("Kliens csatlakozott");
try {
PrintWriter kuldes = new PrintWriter(beerkezoKliens.getOutputStream(), true);
for (int i = 0; i < szamCimek.size(); i++) {
kuldes.println(szamCimek.get(i));
}
} catch (IOException ex) {
System.out.println("Nem kuldott semmit");
}
}
} catch (IOException ex) {
System.out.println("nem tudott csatlakozni kliens");
}Kliens oldal:
do{
valasz = beolvas.readLine();
szamCimekClient.add(valasz);
System.out.println(valasz);
System.out.println(szamCimekClient.size());
} while (valasz != null);
System.out.println("1");A kliens már az utolsó kiírást nem csinálja meg.
-
Drizzt
nagyúr
válasz smallmer #10103 üzenetére
Még szebb éenne amúgy, ha try with resources-t haszbálnál. Ezt olyan osztályokra lehet alkalmazni, amik implementálják az AutoCloseable interface-t. Ilyenkor a try blokk végé a try után közvetlenül zárójelbe írt példányok close-a implicit meg lesz hívva.
Tehát valahogy így nézni ki:
try(PrintWriter kuldes = new PrintWriter(beerkezoKliens.getOutputStream(), true);) {
for (int i = 0; i < szamCimek.size(); i++) {
kuldes.println(szamCimek.get(i));
}
} catch (IOException ex) {
System.out.println("Nem kuldott semmit");
}Persze lehetne még csomó mindent csinálni. Kinn is try-with-resourcest használni, többszálúság, etc.
I am having fun staying poor.
-
Zsoxx
senior tag
Sziasztok
JavaFX-szel ismerkedem (+JAVA természetesen). Egy-két egyszerűbb programot már létrehoztam vele. Az lenne a kérdésem, hogy hogyan lehet önállóan, Win alatt futtatható programmá konvertálni a kész projektet?
Illetve mennyire érdemes belemélyedni az FX-be? Van nála modernebb megoldás asztali alkalmazásokhoz?
[ Szerkesztve ]
-
Aethelstone
addikt
-
Dinter
addikt
Sziasztok.
.
Van egy grafikus JavaFX alkalmazásom, az App osztály felelős az kirajzolásért és az irányításért. A problémám a következő:Van egy gombom (addMember), ami azt szeretném, hogy a kattintáskor létrehozzon egy új Member-t, majd ezt a Member-t hozzáadja ahhoz a Team-hez, ami épp ki van választva a megjelenített táblázatban. Ha én az EventHandler-t az App-on belül valósítom meg, akkor minden gombnak az App osztály adattagjának kell lennie, hogy a handle függvényben le tudjam ellenőrizni, hogy melyik osztályban történt a kattintás. Viszont ha külön osztályt hozok erre létre, akkor viszont kattintáskor le kéne kérni a szövegdobozok tartalmát, az épp aktuálisan kiválasztott Team-et, és ezt átadni az EventHandler-nek, de ezt önmagának nem tudja megtenni. Arra gondoltam, hogyha az App-on belül a csapatokat tároló teamData, teamTable (megjelenített táblázat) és a szövegdobozok static-ok lennének, akkor külső EventHandler osztályból is elérném őket és akkor legalább a gomboknak nem kellene az App osztálynak adattagjának lenni, hanem lehetne függvényen belül. Van erre valami más megoldás?
-
Drizzt
nagyúr
válasz Dinter #10108 üzenetére
Valahol van erre minta kódod?
"Ha én az EventHandler-t az App-on belül valósítom meg, akkor minden gombnak az App osztály adattagjának kell lennie, hogy a handle függvényben le tudjam ellenőrizni, hogy melyik osztályban történt a kattintás."
Ez szerintem nem így van. Vagyis nem teljesen értem, hogy mit értesz az alatt, hogy le kell tudd ellenőrizni, hogy melyik osztályban történt a kattintás? Miért kellene ezt leellenőrizni? Ha bárhol csinálsz EventHandler-t implementáló osztályt, azt be tudod állítani event handlernek. Akár csinálhatsz egy olyan függvényt az Appban, ami EventHandler<MouseEvent>-et ad vissza, pl. így:
Class MyApplication {
EventHandler<MouseEvent> createTeamHandler(Team t) {
return new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent e) {
System.out.println("MouseEventhandler runs");
t.doSomething();
}
};
}
}És akkor ahol akarod használni:
MyApplication app = new MyApplication();
Team t = new Team();
button.addEventHandler(app.createTeamHandler(t));Mondjuk Javafx-hez sem értek. De ehhez hasonló dolog simán megy pl.: Consumer-ekkel:
public class Book{
public Book(String name) {
this.name = name;
}
private String name;
private Consumer<Book> consumer;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void setConsumer(Consumer<Book> bookConsumer) {
consumer = bookConsumer;
}
public void consume() {
consumer.accept(this);
}
}
public class Tester {
public static Consumer<Book> getBookConsumer(int number) {
return new Consumer<Book>() {
@Override
public void accept(Book book) {
System.out.println(number);
}
};
}
public static void test() {
Book b1 = new Book("AGILE workflow");
b1.setConsumer((book -> {
System.out.println(visitables.size());
}));
b1.consume();
b1.setConsumer(getBookConsumer(8));
b1.consume();
}
}I am having fun staying poor.
-
smallmer
őstag
Sziasztok!
Mitől lehet:
A JFrame-hez, hozzáadok JButton-okat, illetve JLabel-eket, viszont csak akkor jelennek meg ha fölé húzom az egeret.
Köszönöm
[ Szerkesztve ]
-
Zahze
csendes tag
Sziasztok.
SpringBoot alkalmazásból szeretnék elérni egy Mysql adatbázist, de ezt a hibaüzenetet kapom:
java.sql.SQLException: Unable to load authentication plugin 'caching_sha2_password'.
A program properties fájlja:
datasource:
url: jdbc:mysql://localhost:3307/blogDB?useSSL=false
username: username
password: password
tomcat:
connection-properties: useUnicode=true;characterEncoding=utf-8
max-wait: 20000
max-active: 50
initialization-mode: always
jpa:
hibernate:
ddl-auto: create
show-sql: true
properties:
hibernate.dialect: org.hibernate.dialect.MySQL5DialectHa a useSSL-t true-ra állítom akkor pedig ezzel a hibával száll el:
com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.Őszintén szólva, nem igazán értem mi lehet a probléma.
Az első hibára az interneten javasolt megoldás nekem nem működött, ugyan úgy dobja a hibát.
(Javasolt megoldás : )ALTER USER 'student'@'localhost' IDENTIFIED WITH mysql_native_password BY 'pass123';
Az adatbázis localhost-on megy, dockerbe, a default 3306-os portot más adatbázis miatt át mappeltem 3307-re. MySQL Workbench-el elérem az adatbázist, csak programból nem.
Tipp ?
[ Szerkesztve ]
Talk is cheap. Show me the code - Linus Torvalds
-
htc07
addikt
Úgy látom, a mysql5-ben a mysql_native_password a default authentication plugin, a 8-ban pedig a caching_sha2_password. Feltételezem 8-ast használsz.
elsőre amit megpróbálnék, a hibernate dialect-et mysql8-ra állítani.
ha nem jön be, ezt próbáld meg esetleg:
https://stackoverflow.com/a/49228443
de ne vedd készpénznek így negyed4kor.
[ Szerkesztve ]
-
Miertvansote
tag
Sziasztok!
Lehetséges, hogy nem jó helyen járok de hátha. Eddig még nem foglalkoztam programozással (kivéve PLC). Egy év múlva befejeződik az aktuális projektem. Utána lehetséges, hogy felköltözök pestre, és ha úgy adódik megpróbálok elhelyezkedni, valamilyen programozóként. Villamosmérnökét végeztem, egy minimális C tapasztalatom van. A kérdésem, az hogy ti mit ajánlotok, Milyen nyelvet érdemes elkezdeni tanulni, látva az aktuális elvárásokat... (heti 7-8 órát foglalkoznék vele) Addigra egy kezdő szint csak menne, amivel már el tudok helyezkedni. Köszi előre is a tippeket. -
Aethelstone
addikt
válasz Miertvansote #10115 üzenetére
Aktuális elvárás..ilyen nincs. Egyébként Java/Kotlin/c# kombóval nem nagyon tudsz mellélőni.
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Zsoxx
senior tag
válasz Aethelstone #10116 üzenetére
JAVA junior pozícióban kb. melyek a követelmények? Milyen jellegű (rész)projekteket bíznak junior programozókra?
-
Miertvansote
tag
válasz Aethelstone #10118 üzenetére
Mennyit lehet elkérni ezért a szarlapátolásért ? 650 bruttó ?
Egy másik kérdés, gondolkodom, most hogy nekiállok a németnek. Van bármi haszna az IT szektorban ? Villamosmérnökként, talán multiknál lehet haszna egyébként nem gondolnám, nálatok mi a helyzet ?
-
Aethelstone
addikt
válasz Miertvansote #10119 üzenetére
Ha ki akarsz menni vagy a Siemens-nél akarsz dolgozni, akkor jó. 500 brutto kb.
[ Szerkesztve ]
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Drizzt
nagyúr
válasz Miertvansote #10119 üzenetére
Ha elso munkahelyet ertjuk a junior alatt, akkor szerintem 600k fele menni lehetlennek hangzik. Par ev utan ossze lehet hozni, vagy jo korabbi referenciakkal, de full elso munkahelyre nulla tapasztalattal szerintem kizart. Ott inkabb a 400-500k a realitas manapsag.
I am having fun staying poor.
-
Cathfaern
nagyúr
válasz Miertvansote #10119 üzenetére
Német multiknál van, vagy ha nyugati határszélen akarsz dolgozni olyan cégnél aki terjeszkedik ausztria fele is. Amúgy nem sok.
-
Miertvansote
tag
Köszi szépen srácok, villamosmérnökként, most olyan 600 br, mindent egybevetve egy év tapasztalattal, vidéken. Azért gondoltam, hogy programozóként pesten egy kicsit nagyobbról lehet indulni. Esetleg olyanról tudtok, hogy kezdőként részmunkaidősbe lehet ezt csinálni? Vagy akkor már komplett projekteket adnának ki? Az meg azért gondolom nagy falat lenne elsőre. Arra gondolok, hogy egy évig csak ilyeneket vállalnék, majd utána helyezkednék el főállásba, az már talán elég referencia lenne, a kezdőkhöz képesti magasabb bérhez. De kérlek javítsatok ki ha nem jól gondolom.
-
Aethelstone
addikt
válasz Miertvansote #10125 üzenetére
Rakd össze a kezed vidéken, 1 év gyakorlattal a 600 br. miatt. Nem fogsz komplett projektet kapni, azt jellemzően még seniorok is csapatban csinálják. Max. szabadúszóként tudsz ilyet elhozni, ha behazudod a több éves gyakorlatot
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Miertvansote
tag
válasz Aethelstone #10126 üzenetére
Rendben, köszönöm az információkat.
-
disy68
aktív tag
Szia, nézd meg mi a verziója a mysql-connectornak, amit a spring akar használni, valószínűleg egy régebbi lesz, ami nem támogatja az újabb jelszó kezelési eljárást. Nem tudom mit használsz, maven-t/gradle-t, de adj hozzá dependency-ként egy frissebb verziót pl. ezt.
“Yeah, well, you know, that’s just, like, your opinion, man.” — The Dude
-
Zahze
csendes tag
Mavent használok de a connectort hozzáadtam, így is dobálta a hibát. Most vègül a könnyebbik utat választva a mysql-t cserèltem le egy règebbire, ha lesz időm visszarakom a frissebbet ès tovább boncolgatom a problèmát, nem túl valid hogy a DB szervert kell alóla lecserèlni... :|
[ Szerkesztve ]
Talk is cheap. Show me the code - Linus Torvalds
-
-
VTom
veterán
válasz Mirman #10132 üzenetére
Ez mindennel így van.
Programozásnál főleg, attól, hogy valaki elolvasott egy java könyvet, még nem lesz belőle programozó, ezt gyakorlás nélkül lehetetlen elsajátítani, ezért is keresik mindenhol a tapasztalt embereket.Everybody has a plan until they get punched in the mouth.
-
htc07
addikt
Aha, Bp.
Vicces, mert a legtöbb helyen az entry level álláshirdetéseknél is odaírják, hogy 1-2 év tapasztalat, 5-6 technológia (sql, frontend és java keretrendszerek, linux stb), agile software development ismerete szükségésAttól, hogy otthon gyakorolsz, nem fognak felvenni sehová szerintem.
[ Szerkesztve ]
-
smallmer
őstag
Sziasztok!
Mi lehet a gond a programmal?
Serverrel szeretnék küldeni kliensnek mp3 fájlt. Az a gondom, hogy 0 a mérete a fájlnak ami megérkezik.Bővebben: Elküldöm a Serverrel az mp3 fájlt. A kliens kap valamit el is menti a néven amit megadok de 0 a mérete és le se tudom játszani.
Server:
String file = "/Users/E/Music/Zene/1.mp3";
DataOutputStream dos = new DataOutputStream(beerkezoKliens.getOutputStream());
FileInputStream fis = new FileInputStream(file);
byte[] buffer = new byte[8192];
while (fis.read(buffer) > 0) {
dos.write(buffer);
System.out.println("ír");
}
fis.close();
dos.close();Kliens:
DataInputStream dis = new DataInputStream(s.getInputStream());
FileOutputStream fos = new FileOutputStream("F:/testfile3.mp3");
byte[] buffer = new byte[4096];
int filesize = 15123; // Send file size in separate msg
int read = 0;
int totalRead = 0;
int remaining = filesize;
while((read = dis.read(buffer, 0, Math.min(buffer.length, remaining))) > 0) {
totalRead += read;
remaining -= read;
System.out.println("read " + totalRead + " bytes.");
fos.write(buffer, 0, read);
}
fos.close();
dis.close();köszi
-
sztanozs
veterán
válasz smallmer #10135 üzenetére
1) az utolsó csomagot nem jól küldi el (maradvány méret helyett az egész buffert)
2) filesize-ra nincs szükség a fogadó oldalon, ha megbízható a kapcsolat, és az 1-es pontot javítottad
3)fos.close();
előtt kell egyfos.flush();
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
Lortech
addikt
A FileOutputStream flush() metódusa, melyet az OutputStream osztályból örököl, így néz ki:
public void flush() throws IOException {
}Szóval ne pazaroljuk a vizet feleslegesen.
Thank you to god for making me an atheist
-
sztanozs
veterán
válasz Lortech #10142 üzenetére
Hát elméletileg - a fedő lehajátásával - automatikusan üríteni kéne az edényt, de ezt csak a modern cuccok csinálják... Igazából fogalmam sincs, hogy itt konkrétan van-e értelme kézzel lehúzni, vagy a lezárás automatikusan ürít is.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
elektronika5
újonc
Sziasztok!
Valaki tudna segíteni Java programozásban?
Készítsen olyan programot Java-ban, amelyben adott egy osztály: állatok. Az állatok rendelkeznek névvel, színnel. Az állatok osztályból öröklődéssel hozza létre a kutya osztályt, amely tagjai a fenti attribútumokon kívül még rendelkezzenek fajtával és korral is. 3pont
Ügyeljen az elnevezéseknél a Java-konvenciókra: mi kis- és mi nagybetű! Az osztályokat külön fájlokban tárolja el. 1pont
Minden esetben állítsa be a megfelelő láthatóságokat az adatvédelmet szem előtt tartva!Előre is köszönöm a segítséget!
-
bambano
titán
válasz elektronika5 #10145 üzenetére
A segítség kifejezés azt jelenti, hogy csinálod, és amikor megakadtál, konkrét problémával kapcsolatos konkrét kérdést teszel fel.
A beadandót nem fogják helyetted megírni.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
Zsoxx
senior tag
válasz elektronika5 #10145 üzenetére
Milyen JAVA-képzésre jársz?
-
Zsoxx
senior tag
válasz elektronika5 #10145 üzenetére
Amúgy meg pl:
class Allatok {
String nev;
String szin;
}class Kutya extends Allatok {
String fajta;
int kor;
}A láthatóságban már nem segítek.
-
sztanozs
veterán
válasz smallmer #10144 üzenetére
Úgy, hogy az
fis.read(buffer)
visszaadja, hogy ténylegesen mennyit tudott olvasni (nem csak -1 et, ha nincs már adat).
Így, ehelyett:while (fis.read(buffer) > 0) {
dos.write(buffer);
System.out.println("ír");
}Ez kell:
int count;
while ((count = fis.read(buffer)) > 0)
{
dos.write(buffer, 0, count); //*buffer*-ből a *0* elemtől elküld *count* számú elemet
System.out.println("ír");
}Ezzel az utolsó (maradvány részt) is helyes mérettel küldi át.
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- A fociról könnyedén, egy baráti társaságban
- Nintendo Switch
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Modern monitorokra köthető 3dfx Voodoo kártya a fészerből
- Suzuki topik
- Kerékpárosok, bringások ide!
- Elektromos cigaretta 🔞
- Hardcore café
- Sony Xperia 1 V - kizárólag igényeseknek
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- További aktív témák...
- Újszerű - ASROCK B450 Fatal1ty Gaming K4 AMD AM4 alaplap + Windows 10/11 HOME digitális licensz
- Újszerű - ASROCK B450 Pro4 AMD AM4 dobozos alaplap
- HP Elitedesk 800 G4 DM I5-8500T 16GB 256GB SSD (1 USB sérült, de működik)
- Dell 7060 Micro I5-8500T 8GB 500 GB SSD WIFI
- DELL LATITUDE 7390 I5-8250U/8GB/256GB SSD/1920X1080