- Hamarosan megkezdődik a nubia 2,8K-s táblagépének szállítása
- Barátokká váltak az eddig rivális AI-óriások
- ASUS blog: Ideális olcsó utazós gép lett az új Vivobook S14
- Az Aura Displays hordozható monitorhármasa jól felturbózhatja a produktivitást
- Dual Mode-os IPS monitorral adott magáról életjelet a Gigabyte
Új hozzászólás Aktív témák
-
Szmeby
tag
válasz
Taoharcos #12050 üzenetére
Attól függ, milyen eszközzel olvasod fel a fájlt.
Akárhogy is, a fájlban a szöveg byte-ok halmaza, azt valamilyen karakterkészletre kell alakítani felolvasáskor. Akár bytearrayt, akár inputsreamet, akár valamilyen fancy toolt használsz, ami ezekre épül, mindegyikben kell legyen (az értelmesekben legalábbis) olyan opció, ahol megadhatod a charsetet is. Vegyük például a Files::lines metódust ő is vár egy charsetet, megadhatja az, akinek erre van igénye.
A nio StandardCharsets osztályában megtalálod a gyakran használt charseteket, bár mondjuk a latin2 szerintem nincs köztük, de a nio ismeri azt is. Legrosszabb esetben stringként megadod a Charset::forName factory metódusnak és máris van egy charseted, amit használhatsz az olvasásnál. Csak jól írd be a nevét.
Egyébként, ha lehetőséged van rá, inkább pl. UTF8-ban generáld ki azt a csv-t, az sokkal univerzálisabb.
-
válasz
Taoharcos #12005 üzenetére
Futásidőben nem tudsz. Viszont induláskor tudsz neki beadni portszámot: itt
Illetve a propertiesben a server.port=0 egy random portot választ.Kerülőmegoldásokkal biztos megoldható az is, hogy induláskor a TCP portot először ellenőrzöd és ha foglalt növeled és azt adod be neki a main függvényben. (TestSocketUtils-nak talán van egy ilyen from-to port scan metódusa)
Bár prod környezetben érdekes megközelítés nem statikus vagy teljesen random portot használni.
-
TGWH
őstag
válasz
Taoharcos #11626 üzenetére
Nem akarok fórumot készíteni.
Egy adatbázis van, létre akartak hozni még egyet, de nem lehet. De nem gond, csak egybe lesz minden tábla.
Akkor igazából PHP + mysql is lehet, azt mondjátok az jobb, mint xml fájlokba kiirtani java alatt. Akkor tolódik a java tanulás.
Kössz mindenkinek -
Szmeby
tag
válasz
Taoharcos #11502 üzenetére
Ha az egy RollingFileAppender, akkor igen.
Bár emlékeim szerint volt neki valami MaxFileSize property-je is... lehet, hogy az közben elavulttá vált? A doksiban így hirtelen blikkre nem találom.
-
disy68
aktív tag
válasz
Taoharcos #11414 üzenetére
meg kell nézni, hogy pontosan mit és hogyan csinál, hogyan volt használva a korábbi programból és hogyan a tiedből, ha ennyiből nem derül ki akkor utána nézel, hogyan lehet debug-olni, abból biztos kiderül, hogy mi okozza a problémát
aztán vagy máshogy használod vagy át/újra kell írni -
disy68
aktív tag
válasz
Taoharcos #11412 üzenetére
Mi az a dll, amit használsz? A hiba azért van, mert a dll-ben lévő kód az általa lefoglalt memórián kívül akar írni a memóriába, amit akár más process éppen használ. Ezt figyeli a runtime és lelövi. Jobb esetben bugos a dll-ben lévő kód, rosszabb esetben valami kártevő lakik benne.
-
floatr
veterán
válasz
Taoharcos #10979 üzenetére
Nekem az egyik projektben egy ideig két Oracle 10g adatforrásom volt beállítva v7-es driverrel ahhoz hasonlóan, ahogy a második példádban írják le. Nem kellett dialektust használni, viszont mysql-es példák alapján mindig belefutok ebbe. Kezdem én is hülyének érezni magam
-
disy68
aktív tag
válasz
Taoharcos #10974 üzenetére
Alapból nem kéne külön beállítani, ha tud kapcsolódni, akkor meg tudja határozni. Én első körben arra tippelnék, hogy a kapcsolat se épül fel vagy nincs a db létrehozva, akkor is jöhet ez a hiba. A két db amúgy különböző? Van-e mintakód? Próbáltad-e esetleg valami in-memory db-vel (pl. h2/hsql)?
(#10975) venic
Melyik porton futna? Ha 80-as, akkor a skype esetleg lehet a ludas. De valami hibaüzenet nem ártana -
válasz
Taoharcos #10749 üzenetére
Ha van olyan oszlophalmaz, amiből lehet kulcsot képezni (azaz pl. lehet(ne) rájuk unique indexet definiálni az adatbázisban), akkor az ezen oszlopoknak megfelelő objektumváltozóból lehet összetett kulcsot (composite key) gyártani. (Pl. az
@EmbeddedId
annotációval.)Ha Oracle az adatbázis, akkor lehet próbálkozni azzal is, hogy a ROWID-et rámapeljük valamilyen dummy változóra:
@Id @Column(name="ROWID") String id;
(Magam sohasem próbáltam, de lekérdezésnél akár működhet is...Persze a hordozhatóságnak ilyenkor annyi.)
-
-
Szmeby
tag
válasz
Taoharcos #9777 üzenetére
A szerző állítása szerint a cikkek dedós szinthez íródtak. Egyetértek. Viszont rendkívül értékesek is.
Ugyan csak felületesen olvastam, de gyorsan megragadott. Visszaköszönnek olyan nyelvi fordulatok, melyeket réges régen egy C64 prog könyvben olvastam, és gyerekfejjel mennyire lebilincselőnek találtam. Szívesen viszontlátnék egy hasonló stílusban íródott gyerekkönyvet mondjuk java vagy python köré építve. -
disy68
aktív tag
válasz
Taoharcos #9719 üzenetére
Én nem használnék ma már sha-1-et sima sóval (pláne nem egy statikus értékkel). Szerintem használj minimum bcrypt-et. Itt olvashatsz egy OWASP ajánlást jelszó hash tárolásról/kezelésről. Bcrypt minta. Amúgy a Spring Security is tartalmaz bcrypt-hez util osztályt.
Session kezelést is rábíznám a Springre, biztos tudnak a Vaadin-nal együttműködni, de velük nincs konkrtét tapasztalatom.
-
togvau
senior tag
válasz
Taoharcos #9583 üzenetére
Igen, mavent is kéne használni, de én már elfelejtettem/nem is ismerem az ilyen sallangrendszereket, bug gyűjteményeket mint a spring, maven, és a többi, multiknál épp aktuálisan "kötelező" bloatware.
Szóval a feladat egy jsf, jpa-mysql alkalmazás ami wildfly-on fut, és maven van használva benne. Eclipse-ben fejleszteném, és erre a feladatra a legminimálabb környezetet szeretném összehozni... mert nekem a sima eclipse-java SE+ innen onnan öszedett libek eddig elegendőek voltak...
Erre mik a javaslatok?Letöltöttem egy mavent, az úgy van kicsomagolva. Eclipse-ben van olyan hogy új maven project, és valami group meg artifact id-ket írtam bele, de aztán mi van? Hogy lehet válogatni a libek között amiket elvileg meg kéne találnia?
-
válasz
Taoharcos #9218 üzenetére
Van egy fuggvenyed,
R fuggveny(P1,P2,P3).
A fuggveny parameterei P1,P2,P3, visszateresi erteke R. Ha a fuggvenyt meghivod, es ennek eredmenyekepp a rendszerben _barmi_ mas megvaltozik, akkor van side effect. Peldaul ha kiir valamit a kepernyore, akkor az mar side effect.
-
Lortech
addikt
válasz
Taoharcos #9190 üzenetére
Nem tőlem kérdezted, és csak részben válaszolok.
Számomra a Vaadin (és hasonló megoldások) legnagyobb hátránya az egész megoldás alapfilozófiája, ami egyébként legnagyobb előnye is volna egyben. Az, hogy megpróbálja a webet elfedni a Java programozó elől a webalkalmazásokkal kapcsolatos általános problémákat és technológiákat, html-t, css-t, javascriptet. Kapsz egy keretet és előre meghatározott eszközkészletet (pl. komponenseket), amiből össze tudsz legózni egy webalkalmazást anélkül, hogy igazán értenél a webhez, nem sűrűn kilépve a Java adta komfortzónádból. Ezt kínálja elméletben. A gyakorlat természetesen nem ilyen egyszerű, mert vannak a fránya ügyfelek, felhasználók, akik nem uniformizált szoftvereket akarnak, hanem egyedit, a nekik legmegfelelőbbet, testreszabottat, pont olyat, amilyet elképzeltek.A gond ott kezdődik, amikor ki kell lépned a készen kapott megoldások keretei közül és bővítened kell az eszközkészletet egy saját megoldással, vagy hibába futsz bele, vagy a kapott keretek szűkösnek bizonyulnak egy adott probléma megoldásához. Ez pedig fájdalmas lehet, elviheti azt a produktivitásbeli előnyt, amit korábban megnyertünk.
Az én munkám - sajnos vagy szerencsére - olyan, hogy sokféle, teljesen különböző projektünk van, és teljesen egyedi igényeknek kell megfelelni, ritkán tudjuk egy komponens halmaz által szabott lehetőségekhez igazítani az igényeket, ezért nincs csak egyféle megoldás, amit mindig használunk, pl. egy extjs, ami egyébként tök oké a licencelését és a releaselésüket leszámítva.
Egyébként azt gondolom, hogy 2017-ben gyors, modern, igényes, reszponzív webalkalmazásokat aligha lehet erős webes frontend tudás és némi designer véna nélkül fejleszteni, ehhez képest pedig igencsak kompromisszumos megoldásokat nyújtanak az ilyen előre definiált komponensekkel operáló frameworkok, mégha a megjelenítésük jól testre szabható is. Én azt mondom, hogy aki nem frontend fejlesztő, és nem érdekli a frontend annyira, hogy a szükséges dolgokat megtanulja hozzá, annál felesleges a frontend fejlesztést erőltetni. /Persze nyilván teljesen mások lehetnek az igények egy enterprise intranetes webalkalmazásnál, mint egy csillivilli, milliós végfelhasználói bázist különböző eszközökre optimalizáltan kiszolgáló alkalmazásnál./ -
#68216320
törölt tag
válasz
Taoharcos #9143 üzenetére
Az a gond, hogy a forráskódot és a class-t felhasználnák majd osx es linux rendszereken is. Uft8 kellene. Igazából már csak a bevitelt kellene valahogy megoldani. Gondolom az UTF8 ékezetek 2bytes tárolása okoz gondot, de egyelőre nem tudom pontosan mi a gond csak tippelek.
Kipróbáltad ahogy leírtam és neked is ezt az eredményt adja?(#9142) disy68:
Nálam a fentebb leírt UTF-8 beállításaimmal fordítva/futtatva az INPUT_MESSAGE helyesen jelenik meg, de ékezetet beírva a
out.println(String.format("key: '%s'", scanerObj.next().charAt(0)));
sornál ugyanazt a hibát adja, mint amit már mutattam. -
F1rstK1nq
aktív tag
válasz
Taoharcos #9125 üzenetére
Lehet én vagyok a maradi, de nem egyszerűbb/hatékonyabb így? mvnrepository, majd megkeresed és bemásolod a megfelelő dependency-t a pom-odba?
-
-
n00b
újonc
válasz
Taoharcos #8454 üzenetére
Én most hétfőtől járok egy intenzív 12 hetes online kurzusra:
https://www.edx.org/course/software-construction-java-mitx-6-005-1xEz teljesen ingyenes, ha nem akarsz papírt róla, és az MIT tartja. Csapatokban fogunk projekteken dolgozni. Lehet, hogy kicsit későn szólok, de ha csatlakozol, szólj! Mindig jó, ha vannak magyar ismerősök
A többieket kérdezem: szerintetek érdemes kifizetni az 50 dolcsit a papírért? LinkedIn-be is beilleszthető. Én szeretnék a szakmában elhelyezkedni, de egy ismerősöm szerint nem a papírt nézik, hanem a tudást.
-
válasz
Taoharcos #8577 üzenetére
> session.invalidate();
A 'session' az itt ugye egy lokalis valtozo, egeszen konkretan egy referencia. Ezen hivsz egy metodust. Nincs ertekadas. Ha nincs ertekadas, akkor a valtozo hogy lehetne hirtelen null?
HttpSession session = request.getSession();
session.invalidate();
if(getSession(false)==null){
out.print("még be vagy jelentkezve");
request.getRequestDispatcher("welcome.html").include(request, response);
}
else{
out.print("kijelentkeztél!");
request.getRequestDispatcher("index.html").include(request, response);
}Probald meg inkabb igy.
-
floatr
veterán
válasz
Taoharcos #8456 üzenetére
Nem ismerem a céget, de majdnem biztos, hogy konkrét cégekkel, vagy fejvadászokkal állnak szerződésben, és a tanfolyam költéségének nagyobbik részét a toborzó cég fizeti, ha sikerül szerződét kötni. Nincsenek csodák, és egy cég sem engedheti meg magának, hogy lényegesen rosszabb szolgáltatást nyújtson, mint bárki más. Ez max igen rövid távon éri meg, utána bukó.
-
ToMmY_hun
senior tag
válasz
Taoharcos #8456 üzenetére
Amennyiben olcsón szeretnél tanulni, akkor javaslom, hogy állj neki egyedül, könyvekből. Ez a legnehezebb módszer, nem is a leghatékonyabb, de biztosan a legolcsóbb. Könyveket ajánlottak már a fórumban, rá tudsz keresni hogy miket érdemes elolvasni.
Én a következőket ajánlom:
- Agyhullám Java (ezzel kezdd)
- Effective JavaEzen felül ami még kelleni fog, az a verziókezelés, design pattern-ek, legalább egy Java IDE alapos ismerete, javaslom az Eclipse-et, esetleg a Netbeans-t.
Kérdéssel nyugodtan fordulhatsz a fórumtársakhoz, nem hiszem hogy kevésbé lennének képzettek, mint az előadók az általad mutatott tanfolyamon.
-
axioma
veterán
válasz
Taoharcos #8454 üzenetére
Nezd, ket lehetoseg van.
1. a ceg elszamolta magat - szerinted erre mennyi az esely?
2. amennyibe kerul, annyit kapsz a penzedert
Lehet, hogy tkp. csak a vizsgaert fizetsz, kapsz ne'mi amugy is megtalalhato tavoktatos tananyagot, aztan kuzdj meg vele. Epp nemreg linkelte'k be egy masik topikba a cikket a ket masik magan programozokepzesrol, ahol senior programozo szintu emberek - annak megfelelo fizetesert persze! - foglalkoznak a csoporttal, akiknek tanulasi helyet, valos orakat (bar inkabb gyakorlatiakat), konzultaciot biztositanak -- szoval nem tud olcso lenni az a fajta kepzes, tehat olcso kepzes me'g annyit se ad. (Mert nyilvan nem egyetemi szintu tudast lehet osszeszedni erettsegirol indulo bolcsesz iranyultsagunak.)
+1. esetleg a kesobbi elhelyezesedert a kozvetitotol kapott penz lehet me'g benne, de ez tuti nem ez a nagysagrend, ami a kulonbseg -
-
modder
aktív tag
válasz
Taoharcos #3786 üzenetére
Illetve a private static List userList = new ArrayList();-t tedd inkább egy @ApplicationScoped bean-be nem static-ként, mert semmi garancia nincs rá, hogy egy konkurens felhasználó, akit másik http worker szál szolgál ki szerver oldalon, ugyanazt fogja látni a userList-ből.
-
Mukorka
addikt
válasz
Taoharcos #3786 üzenetére
Ha már tanácsadás megy nagyban: A ManagedBean name értéke lehetne userBean , nem pedig userbean.
Ha Serializable interface-t implementálsz akkor pedig vagy legyen serialVersionUID megadva (ezt generálja magától az eclipse is ha megkéred rá) vagy legyen Annotálva az osztály : @SuppressWarnings("serial").
Kerüld a "felkiáltójeles" kódot!Ui: inkább cseréld le a listában tárolt user megoldást adatbázisban tároltra.
-
skoda12
aktív tag
válasz
Taoharcos #3786 üzenetére
Az elottem szolokhoz meg annyit tennek hozza, hogy ha csak a contains()-t hasznalod egyelore, akkor ArrayList helyett erdemes lenne LinkedHashSetet hasznalnod. Ez a sorrendet is tartja es hatekonyabb a contains() hivas. + a collectionoknek adj meg generic tipust is <> koze.
-
Mukorka
addikt
válasz
Taoharcos #3786 üzenetére
A loginUser fv hiába csinál a meglévő adatokkal új user objektumot , az mint példány még nincs benne az arraylist-ben ezért lesz false. Mivel nem írtad felül az equals függvényt a User osztályban így az alapértelmezett (örökölt) equals azt nézi hogy ugyan az-e a két objektum memóriában tárolt elérési címe. Ez azért lényeges mivel az ArrayList is a tárolt elemek equals függvényét használja ahhoz hogy megmondja mi van a listában és mi nincs.
-
Taoharcos
aktív tag
válasz
Taoharcos #3785 üzenetére
Ja valami kód is:
package com.corejsf;
public class User {
private String name;
private String password;
public User(String name, String password){
this.name = name;
this.password = password;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}package com.corejsf;
import java.io.Serializable;
import java.util.*;
import javax.faces.bean.*;
@ManagedBean(name="userbean")
@SessionScoped
public class UserBean implements Serializable{
private String name;
private String password;
private String userListToString;
private static List userList = new ArrayList();
private User user;
public String addUser(){
user = new User(name, password);
userList.add(user);
userListToString = userList.toString();
if (userList.contains(user)){
return "thankYou";
}
else {
return "loginFail";
}
}
public String loginUser(){
user = new User(name, password);
userListToString = userList.toString();
if(userList.contains(user)){
return "thankYou";
}
else{
return "loginFail";
}
}
public String getUserListToString() {
return userListToString;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
} -
pvt.peter
őstag
válasz
Taoharcos #3421 üzenetére
@Taoharcos: elnézek arra is
@Superhun: próbálkoztam már külföldi fórumon, eddig eredménytelenül
Cégekkel való kapcsolatfelvételben én is gondolkoztam, a következő lépések közé teszem -
modder
aktív tag
válasz
Taoharcos #3228 üzenetére
Akkor gondolom a hiba az egy fordítási hiba annál a kódrésznél egy szép hibaüzenettel. Nem árt, ha legközelebb azt is beírod, nem csak hiba. A vízvezeték szerelőnek sem mondod, hogy rossz a zuhanyzó, mert kicserléi az egész zuhanyfülkét, közben pedig csak a csap csöpög benne..
Na de a lényeg, hogy az ott egyáltalán nem jó. azt a for ciklust tedd a konstruktorba olyan helyre, hogy a benne használt változók már inicializálva legyenek.
mert az ott nem egy függvényhívás, hanem tömb definíció, és tömböt többek között úgy tudunk definiálni, hogy: tipus[] tomb = new tipus[]{ elem1, elem2, elem3 }
Plusz nem árt, ha az alapokkal tisztában vagy, mert lehet kérdezni, de senki nem fogja helyetted megtanulni
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/index.html -
-
kispx
addikt
válasz
Taoharcos #2908 üzenetére
Nem az határozta meg.
Konkrétan a class pathban csak a mysql volt belerakva. Ezt kellett kibővíteni az aktuális könyvtárral (pár hsz-szel fentebb írtam, hogy a class pathot egy pontosvesszővel és egy ponttal bővítse)
A hello world programnál az aktuális könyvtárban kellett keresni a class fájlokat. Amit nem volt megadja ezért nem találta meg és így hibával állt le. -
WonderCSabo
félisten
válasz
Taoharcos #2806 üzenetére
Sztem a két kód között vagy kapcsolat van, és a másodikra vonatkozott, hogy állítólag nem fut le.
RexpecT: Tuti lefut az, csak max Te nem látod az eredményét, mert hibás a logika. Rakj oda egy breakpointot és debugoljad, vagy az initLoad() fv. első sora legyen egy syso hívás, és meglátod, hogy lefut-e a fv.
-
modder
aktív tag
válasz
Taoharcos #2582 üzenetére
Servlet/JSP/JDBC az alap. Én ezekkel nem is nagyon foglalkoztam, inkább megpróbáltam kapásból JSF, EJB, JPA-t tanulni. Ez a kombó már komolyabb alkalmazások elkészítésére is alkalmas, és jobban karbantartható, de nem egyszerű megtanulni. Lényegesen lassabb megtanulni, mint az előbbit, de ha rendes Javas karriert akarsz befutni, mindenképpen érdemes ezt tanulni, szerintem. (vagy Struts2 ill. Spring3)
JSF mellett még ott van a Struts2 és a Spring framework 3. Mind a három MVC architektúrájú, nagyon sokat tud, de nem foglalkoztam az utóbbi kettővel. Azt tudom, hogy a JSF az bekerült a Java specibe, így hivatalosan támogatott keretrendszer, nagyon jól együttműködik EJB-vel és JPA-val.
Lacces: Szerintem jó ötlet, még a JSP, JDBC kombóval is PHPval szemben, mert rendes objektumorientált szemlélettel tudsz dolgozni, és tisztább kódot tudsz írni, ezt a nyelv megköveteli. Csomó dolog nincsen benne, ami a PHP-t dinamikusabb, alkalmazkodóbb nyelvvé teszik, de pont ezek miatt a megszorítások miatt lesz majd értelmesebb és átgondoltabb a kód. (Persze Javaban is ott a Reflection API, amivel aztán csuda dolgokat lehet művelni)
-
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- iKing.Hu - Samsung S25 Ultra - Titanium Black - Használt, karcmentes
- Apple Ipad 10.generáció
- Új HP Pavilion x360 14-ek Érintős hajtogatós Laptop Tab 14" -35% i5-1335U 8/512 FHD IPS Iris Xe
- RTX 4080 SUPER,16GB. Ryzen 7 7800X3D, 32 RAM Fury RGB! Garancia!
- Asztali PC , i7 9700K , RX 5700 XT , 32GB DDR4 , 500GB NVME , 1TB HDD
- Lenovo Thinkpad P1 gen1, gen2, P52s FHD, 4K oled touch
- NEC MultiSync V421 monitor (42") 1920 x1080px
- AKCIÓ! Lenovo Thinkpad T14 Gen 3 üzleti notebook - i5 1245U 16GB RAM 512GB SSD Intel Iris XeW11
- 122 - Lenovo Legion Pro 5 (16ARX8) - AMD Ryzen 7 7745HX, RTX 4070 (48 hónap garancia!)
- LG 77G3 - 77" OLED evo - 4K 120Hz 0.1ms - MLA - 2000 Nits - NVIDIA G-Sync - AMD FreeSync - HDMI 2.1
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged