- Fórumok
- Szoftverfejlesztés
- Java programozás
- (kiemelt téma)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- Archttila: SMART tesztelés automatizálva: smartctl poller script Zsh-ban, RPi-re
- gban: Ingyen kellene, de tegnapra
- btz: Internet fejlesztés országosan!
- sziku69: Fűzzük össze a szavakat :)
- Parci: Milyen mosógépet vegyek?
- bacsis: Gyere el a 11. BRSZK-ra!
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- MasterDeeJay: Low budget (50.000 forint) light gémer gép összerakása
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
Új hozzászólás Aktív témák
-
RexpecT
addikt
Ahogy nézem ezt az SDK-t kell leszedni hozzá, a windowsos verzióban benne van az általad említett driver is.
Itt a developer guide hozzá. -
RexpecT
addikt
Google Drive-ba felraktam kompletten ami kell a feladathoz, és ahol elakadtam.
Pastebin a fő osztályról.
Ami még kellhet hozzá a 'tranzakció' osztály (tranzak.java):public class tranzak {
public int id;
public ArrayList<String> term;
public tranzak(ArrayList<String> _term) {
this.term = _term;
}
public tranzak(int _id, ArrayList<String> _term) {
this.id = _id;
this.term = _term;
}
public void getTerm() {
for (int i = 0; i <= this.term.size()-1; i++) {
System.out.println(this.term.get(i));
}
}
public void addTerm(String _ujterm) {
this.term.add(_ujterm);
}
}Amire rájöttem időközben:
Main.class-ban van egy ciklus ami a problémámat okozza:int index = 1;
ArrayList<String> temp = new ArrayList<String>();
tranzak temptranz = new tranzak(0, temp);
for (int i = 0; i <= beolv.size()-1; i++) {
if (beolv.get(i).equals("F")) {
temptranz.id = index;
System.out.println(temptranz.id);
System.out.println(temptranz.term);
//Idáig minden OK, szépen megkapja az (átmeneti) tranzakció az azonosítóját és a terméklistát
trs.add(temptranz);
//Beállítom a változókat a következő tranzakcióhoz
ind++;
temptranz.id = 0;
temptranz.term.clear();
} else {
temptranz.addTerm(beolv.get(i));
}
}
//Viszont amikor kiiratnám a végleges tranzakciókat tartalmazó listát már rossz ID-t és üres terméklistát kapok vissza
for (int i = 0; i <= trs.size()-1; i++) {
System.out.println(trs.get(i).id);
System.out.println(trs.get(i).term);
}Itt a temptranz-ba gyűjtögetem az információkat mind addig amíg "F"-et tartalmazó sort nem talál a ciklus. Ha "F"-hez ér, akkor az eddig összegyűlt adatokkal az átmeneti temptranz objektumot egy az egyben hozzáadnám az ArrayListhez ami tranzakcio objektumokat tartalmaz. A probléma ott jön elő, hogy a
trs.add(temptranz);sor után kinullázom az ideglenes Stringeket tartalmazó Listát, és valamiért (ezt lehet tudnom kéne
) hiába adtam már hozzá az objektumot, kitörli belőle a String lista tartalmát és üresen adja át 
Szóval a probléma okára nagyjából rájöttem, közben meg is oldottam Listák nélkül a feladatot, de kíváncsi lennék, hogy mi okozza pontosan, és hogyan kerüljem el a jövőben az ebből adódó hibákat.

Ui.: a sok próbálkozás és ctrl+c / ctrl+v után lehet maradt benne 1-2 fölösleges sor és csúnyán nézhet ki, utólag is bocsi

Felülírod az objektum értékeit ebben a két sorban:
temptranz.id = 0;
temptranz.term.clear();Ezután se lesz még jó, mert egyszer hoztad csak létre a temptranz objektumot.
-
RexpecT
addikt
Érdekem megoldás amit felvázolsz. Szoktak ilyen megoldást alkalmazni? Igazából azt nem tudom mennyire kell ragaszkodnom a táblaszerkezetben az osztályok szerkezetéhez? Nyilván ORM esetében feltétlenül, bár hallok olyanokat, hogy nem túl célszerű a használata. Ha jól értem akkor az alábbi módon nézne ki, igaz?
+----+-------+ +----------------------+ +----------------------+
| sequence | | TBL1 | | TBL2 |
+----+-------+ +----+--------+--------+ +----+--------+--------+
| id | table | | id | field1 | field2 | | id | field1 | field2 |
+----+-------+ +----+--------+--------+ +----+--------+--------+
| 1 | TBL1 | | 1 | ... | ... | | 3 | ... | ... |
| 2 | TBL1 | | 2 | ... | ... | | 4 | ... | ... |
| 3 | TBL2 | +----+--------+--------+ +----+--------+--------+
| 4 | TBL2 |
+----+-------+Ahol a sequence tábla id auto_increment, a tbl1, tbl2 id pedig unique.
Drizzt: Megnéztem a linket, köszönöm. Van egyébként valami javasolt/preferált megoldás a 3 közül vagy teljesen szabadon választhatok közülük. Esetemben a mindent egy táblába a null/notnull miatt nem volna célszerű. A teljesen különálló táblák és a közös tábla-saját típusos tábla megoldások között dilemmázok. Mivel alapvetően a lekérdezések lesznek töbségben és sejthetőleg típusra szűkítve főként, a külön-külön önálló tábla megoldást érzem picit jobb megoldásnak. De bizonytalan vagyok

Valószínűleg én is két táblába raknám, hogy ne kelljen joinolgatni. Egyébként miért baj, hogy ugyanazzal az id-val van rekord két táblában is?
Egyébként meg lehet mondani, hogy mettől kezdje az id-t osztani:id INT UNSIGNED NOT NULL AUTO_INCREMENT = 100, -
RexpecT
addikt
Sziasztok!
Egy érettségi feladattal van problémám. Eddig mindegyik feladatot megoldottam valamilyen úton-módon, viszont most valamiért nem akar működni az ArrayList úgy ahogy én szeretném

Valakinek elküldhetném privátban? (Pár sor lenne az egész, valószínűleg valami bagatell hibát vétettem, viszont több fájlban vannak a dolgok, nem akarom teleszemetelni a topikot
)Rakd fel pl. pastebin-re a kódot, így más is tanulhat a hibából.

-
RexpecT
addikt
Kis segítséget kérnék. Van egy model-em, amiben 2db dátum+idő-t (datetime?) kellene tárolnom. Értékeket egyenként venne fel, azaz az évszámot külön adom neki, hónapot, stb. Aztán ezt a model menne majd a DAO-nak aki MySQL DateTime formában tárolja.
Az volna a kérdésem, hogy mi volna megfelelő? A Date object? Vagy van valami speciálisabb, amivel kényelmesen setter-ekkel vagy egy string-ből be tudok adni mondjuk egy "2019-02-01 11:59:59" dátumot?Update: Ez mennyire lehet jó megoldás?
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = sdf.parse("2019-01-01 00:00:00");Java 8 és felette érdemesebb a LocalDateTime-ot használni.
-
RexpecT
addikt
Sziasztok, egy kis segítségre volna szükségem egy probléma megoldását illetően.
Szükséges volna egy WEB-es felületen egy SQL tábla adatait táblázatosan megjelenítenem.
A problémát az okozza, hogy amolyan "observer"-es megoldással, ha az SQL tábla adatait egy másik felhasználó megváltoztatja akkor automatikusan ennek az én webfelületemen is frissülnie kellene.
Milyen megoldással/technológiával lehetne megoldanom, hogy az observer-em ilyenkor request nélkül egy response-t csináljon a servlet-es webfelületen?Update: A dolog még csak tervezési fázisban van, teljes szabadság van az adott technológia kiválasztásában. Egyetlen megközés, hogy Tomcat alatt fusson.
Kis guglizással szerintem ezt keresed: Server-Sent Events (SSE)
-
RexpecT
addikt
Sziasztok!
Szeretnék egy kis segítséget kérni egy dologban. Netes HID eszköz include-jából szeretnék adatot nyerni.
https://github.com/nyholku/purejavahidapiVan egy ilyen kódom:
import purejavahidapi.*;
List<HidDeviceInfo> devList = PureJavaHidApi.enumerateDevices();
for (HidDeviceInfo info : devList);
System.out.printf("VID = 0x%04X PID = 0x%04X Manufacturer = %s Product = %s\n",
info.getVendorId(),
info.getProductId(),
info.getManufacturerString(),
info.getProductString(),Erre ezt az output-ot kapom:
VID = 0x046A PID = 0x0023 Manufacturer = null Product = null
VID = 0x12CF PID = 0x0186 Manufacturer = COOLER MASTER Product = CM STORM INFERNO GAMING MOUSEAzt szeretném elérni, hogy megkeressen egy eszközt (példának okáért a CM STORM INFERNO GAMING MOUSE nevűt, majd a VID és PID értékeket adjuk tovább egy változónak (hogy tudjam majd feldolgozni a bejövő adatokat)).
Ezzel próbálom szűrni a cikluson belüli végigfutást (mikor mit csináljon), de sikertelenül.
if (info.getProductString() instanceof String /*mert néha null értékű, és hibát dob*/ && AskDeviceName=="CM STORM INFERNO GAMING MOUSE") {
System.out.println("mach");
VendorID = info.getProductId();
ProductID = info.getProductId();
} else {
System.out.println("nem jó az if");
}Azt már tudom, hogy tuti String az adat, és a mérete is konstans, de mégsem talál egyezést a beírt adatommal.
Mit rontok el?
Szándékosan nem az ID-kkal azonosítom, mert a user interface grafikus felületen a neve alapján választjuk majd ki, hogy melyik eszközt akarom használni, amit majd a gép az ID-k alapján azonosít.Talán ez a probléma: [link]
-
RexpecT
addikt
"ha zavarnak a meglevo bugok, akkor hasznalj mast, de ha nem egy hosszutavo projekt": hosszútávú.
ha nem használok olyan környezetet (nem csak az ide-t ideértve, hanem az összes többi cuccot is), akkor belefuthatok abba, hogy a böngészők már nem képesek megjeleníteni, amit megcsináltam. Mint például a woodstockot nem kezelik az újabb netbeansek."java -jar myApp.jar": most vagy elkerülte a figyelmed, hogy webes cucc lenne, vagy komolyan gondoltad, de akkor vadásszak web konténert, adatbázis kezelő réteget, stb. ? ezt inkább kihagynám.
Én nemrég Spring Bootban raktam össze egy mini projektet, amiben egy endpoint egy MySQL adatbázisból ad vissza JSON-ben adatokat. STS-ben egyszerűen és gyorsan lehet fejleszteni, és valóban ahogy fentebb is írták, "java -jar xy.jar" -al lehet futtatni a service-t(Tomcat-et tartalmaz beépítve, de ha akarsz akkor csinálhatsz WAR file-t is).
-
RexpecT
addikt
Valakinek van tapasztalata JMS 1.1 el és Websphere 7.5 -el?
Ez a MessageSelector nálam nem akar működni, ha kiveszem, akkor a MessageConsumer megkapja a választ szépen, de egyébként nem. Szinkron feldolgozást akarok megvalósítani.
-
RexpecT
addikt
Üdv!
Ha jól emlékszem itt linkelt valaki régebben egy sysadmin videót, amiben egy magyar csóka tartott előadást.
Hiába keresem nem találom.
Valakinek megvan a link?

-
RexpecT
addikt
A modern világ jó részében vagy az üzemeltetés, vagy egy teljesen automatizált folyamat végzi a buildelést és az élesítést is. Persze úgy, hogy először a tesztek is lefutnak. A fejlesztő saját gépén ad-hoc fordított csomagok felett régen eljárt az idő, mert mi van, ha szabadságon vagy, vagy baleset ér? Égjen fel a cég?
Szerintem nézz utána pár build szervernek. Én leginkább a Jenkinset és a TeamCityt ismerem, az előbbit javasolnám kb. bármilyen Java-s projekthez. De tény, a Maven is elég fontos szereplő, hiszen azt tudja meghívni a szerver.
Jogos

-
RexpecT
addikt
Szerintetek mi értelme van, hogy egy cégnél az üzemeltetés végezze a programok buildelését?
Adott egy Java EE projekt, eddig előállítottam az EAR file-t lokálisan, az le lett tesztelve, majd DEV és DEMO rendszerre telepítve. Ha minden jól ment, akkor került az éles rendszerre.
Valahol bevett szokás, hogy az üzemeltetés, aki deployolja az appot, az végzi el a buildelést is?
Én őszintén megmondom nem sok értelmét látom. Mit ajánlotok erre a célra? Maven ear plugin?
-
RexpecT
addikt
Úgy néz ki, hogy az ampersand már alapból escapeolva lett menet közben...egyébként Oracle a DB? Mert ekkor a SET DEFINE OFF szokott segíteni...
Igen Oracle az adatbazis. Köszi megnézem
. -
RexpecT
addikt
Sziasztok!
Találkoztatok már olyan problémával, hogy az adatbázisban szereplő & karakter helyett a Hibernate & -ot ad vissza? Replacen kívül van valami más lehetőségem, ennek kiküszöbölésére?

-
RexpecT
addikt
Biztos, hogy a certificate-tel van probléma, bár most nem tudok jobban belefolyni.
Esetleg nézd meg ezeket a JVM opciókat, mind a debuggolás, mind a trust store manuális beállítása segíthet abban, hogy ellenőrizd, biztosan a jó cacerts fájlt húzza be a rendszer például.
Köszi a megerősítést, és a linket is!

-
RexpecT
addikt
Vannak bejáratott algoritmusok kulcsgenerálásra, például a PBKDF2. Szerintem alapvetően fatális ötlet bármilyen kriptográfiával kapcsolatos implementációnak nekiállni, mert ebben a témakörben túl könnyű hibázni - lásd axioma megjegyzését a kulcsok értékkészletéről.
(Kivéve, ha házi feladatról van szó és konkrétan ez a feladat.)
RexpecT: Nem ártana egy kis kód, hogy hogyan próbálod meghívni az URL-t.
Így próbálom: [link]
Egyébként érdekes, mert ha exportálom a JAR-t akkor ezt a hibaüzenetet kapom:
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException:
PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderExce
ption: unable to find valid certification path to requested targetAzaz nem találja a certificatet.
A java -verisonre ezt kapom:
C:\>java -version
java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b18)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)Pedig abban a JDK-ban a certificate benne van a cacerts-ben:
C:\Program Files\Java\jdk1.7.0_60\bin>keytool -list -keystore "C:\Program Files\
Java\jre1.8.0_25\lib\security\cacerts" -alias xy.zzs.hu
Enter keystore password:
xy.zzs.hu, 2015.06.19., trustedCertEntry,Az eclipse.iniben a 1.7.0_60 -os JDK van beállítva, tehát ha Eclipsből futtatom akkor a ennek a JDK-nak a cacerts fájljában keresi a certificatet, és itt már csak connection resetet ír, pedig abba a cacertsbe be sincs importálva a certificate:
C:\Program Files\Java\jdk1.7.0_60\bin>keytool -list -keystore "C:\Program Files\
Java\jdk1.7.0_60\jre\lib\security\cacerts" -alias xy.zzs.hu
Enter keystore password:
keytool error: java.lang.Exception: Alias < xy.zzs.hu> does not exist
U.i: Egyébként a kód más oldallal jól működik, szóval vagy a certificatere gondolok,vagy valami szerver beállításra.
-
RexpecT
addikt
GET- et akarok küldeni egy HTTPS URL-re, viszont a Java alkalmazásból connection resetet kapok, míg a Chromeos Postman alkalmazás már kap választ ugyenerről a címről.
Mi lehet a gond? Van valakinek ötlete?
-
RexpecT
addikt
-
RexpecT
addikt
Sziasztok!
A gépemen van feltelepítve pár JDK és JRE, 32 és 64 bites verzióban.
A JAVA_HOME környezeti változó a 64 bites jdk1.7.0_60-ra mutat. De ha a command prompt windowban kiadom a java -version parancsot akkor a 64 bites 1.8-at ír.A Java Control Panelban a JRE Setupban a User fülön is ez a két verzió van, míg a System fülön csak az1.8-as.
Kérdés, ha futtatok egy jar-t akkor melyik JRE-t fogja használni(ha nem adom meg explicit módon, hogy melyik futtassa).
-
RexpecT
addikt
A tanusítvány eleve gond lehet, de még azt is el tudom képzelni, hogy a tanusítványban az URL más, mint amit meghívnál, pl www van az elején.
Ha végképp nem boldogulsz, akkor a tanusítvány ellenőrzését ki lehet iktatni fejlesztés/tesztelés idejére:
// Create a trust manager that does not validate certificate chains
TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager(){
public X509Certificate[] getAcceptedIssuers(){return null;}
public void checkClientTrusted(X509Certificate[] certs, String authType){}
public void checkServerTrusted(X509Certificate[] certs, String authType){}
}};
// Install the all-trusting trust manager
try {
SSLContext sc = SSLContext.getInstance("TLS");
sc.init(null, trustAllCerts, new SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
HttpsURLConnection.setDefaultHostnameVerifier(new HostnameVerifier() {
public boolean verify(String hostname, SSLSession session) {return true;}
});
} catch (Exception e) {
;
}de ez csak tüneti kezelés
Valóban az lesz a gond, hogy:
domain: akarmi.valami.hu
domainhez tartozó IP: 10.201.99.94
certificateben lévő CN: 192.169.9.33Köszi szépen

-
RexpecT
addikt
Sziasztok!
Kérnék egy kis segítséget HTTPS híváshoz:
Az oldal amihez csatlakozni szeretnék self-signed certificatet használ(azaz nincs CA által aláírva) ezért ezt külön importálni kell a java cacerts fájljába.
Ezt a következőképpen tettem meg, böngészőből lementettem a tanúsítványát az oldalnak Base64 fromátumú X.509 cer formátumban.
Majd a java keytooljával importáltam a cacerts fájlba, aminek a tartalmát listázva bele is került.Viszont amikor csatlakozni akarok az oldalhoz, ezt írja:
javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No name matching akarmi.valami.hu foundNem tudom hogy mi lehet a gond, a hívást során ezt az URL-t használom:https://akarmi.valami.hu/.......
Van ötletetek?

-
RexpecT
addikt
Én biztos használnék.
Szerintem megéri, hogy kevesebb a befektetett meló, és a hibák száma is csökken. Nem kell megírni újra azt, amit már nagyon sokszor, nagyon sokan, jobban, hatékonyabban, hibamentesen és agyontesztelve már megírtak.Persze ha a projektben valamiért számít a bináris mérete, akkor talán nem fér bele a dolog... De ez szerintem most már egyre kevésbé jellemző.
A méret nem számít.Én is errefelé hajlottam, de köszi a megerősítést.

-
RexpecT
addikt
Mármint külső libraryt használnák-e?
Igen, erre gondoltam.
-
RexpecT
addikt
Ti használnátok külön jar-t egy több query paramétert tartalmazó URL buildeléséhez, vagy csak simán Stringként állítanátok össze?
-
RexpecT
addikt
DateTime now = new DateTime();
DateTime tomorrow = now.plusDays(1);
if (tomorrow.isAfter(now)) {
doIt();
}java.util.Date típusra ide-oda tud konvertálni is, ha szükséged van rá.
Vagy ha nem bírod a 3rd party librarykat, akkor java8 LocalDateTime?
LocalDateTime.from(new Date().toInstant()).plusDays(1);
Rengeteget szívhatsz a másodpercek babrálásával. Az, hogy 1 óra 3600 másodperc, pont annyira igaz, mint hogy egy év 365 nap... vagy mint fentebb, hogy 1 nap 24 óra. Általában igaz, kivéve a kivételek esetén.

A daylight-savig csak egy a sok hülyeség közül. Vannak szökőévek, elcsalt másodpercek, időzónák, saját elcseszett DLS megoldásokkal, borzalom.
Javaslom a jodát, hasznos kis eszköz.axioma & Aethelstone & Szmeby köszi a válaszokat!
-
RexpecT
addikt
A két paraméter amit átadok az aktuális futási időpontot tartalmazó Date Object, illetve a legutóbbi futási időt tartalmazó Date.
Jelen pillanatban naponta 1× kell futnia a proginak, amit úgy nézek meg, hogy az előző futásidőhöz hozzáadok 86400 *1000 millisecet. Ha az így előállt Date utána van a futáskor létrehozott Datenek akkor lefut egy metódus.
Itt csak az a baj, hogy ha 23 óra egy nap akkor (86400-3600)*1000 millisecet kellene hozzáadnom, ha pedig 25 óra egy nap akkor (86400+3600)*1000 millisecet kell hozzáadnom az előző futási időhöz.( mert egyébként +/- 1 órával változni fog a futáskori idő).
-
RexpecT
addikt
Sziasztok!
Van egy service progim, ami időnként meghívódik és megnézi hogy az aktuális idő később van-e mint egy fájlban letárolt dátum + intervallum millisecundumban.
Ez mind szép és jó, de van egy évben 1-1 nap mikor 23 illetve 25 órás egy nap. Ilyenkor a program egy órával hamarabb vagy később fut le. Ettől tudtok szebb/jobb/okosabb megoldást, hogy az intervallumot eltoljam?

public int change(Date today, Date yesterday){
Calendar todayCal = Calendar.getInstance();
todayCal.setTime(today);
Calendar yesterdayCal = Calendar.getInstance();
yesterdayCal.setTime(yesterday);
boolean todayInDayLightTime = todayCal.getTimeZone().inDaylightTime(today);
boolean yesterdayInDayLightTime = yesterdayCal.getTimeZone().inDaylightTime(yesterday);
System.out.println("Yesterday DaylightTime: " + (yesterdayInDayLightTime==true?"Nyari idoszamitas":"Teli idoszamitas"));
System.out.println("Today DaylightTime: " + (todayInDayLightTime==true?"Nyari idoszamitas":"Teli idoszamitas"));
if(yesterdayInDayLightTime == true && todayInDayLightTime == false){
System.out.println("Óra visszallitas -3600");
return -3600;
}
else if(yesterdayInDayLightTime == false && todayInDayLightTime == true){
System.out.println("Óra eloreallitas +3600");
return +3600;
}
else{
System.out.println("Nem történt oraatallitas!");
return 0;
}
}Az If- else if-ben most látom,hogy fordítva írtam a +-3600-at.
-
RexpecT
addikt
Sziasztok!
Van egy service progim, ami időnként meghívódik és megnézi hogy az aktuális idő később van-e mint egy fájlban letárolt dátum + intervallum millisecundumban.
Ez mind szép és jó, de van egy évben 1-1 nap mikor 23 illetve 25 órás egy nap. Ilyenkor a program egy órával hamarabb vagy később fut le. Ettől tudtok szebb/jobb/okosabb megoldást, hogy az intervallumot eltoljam?

public int change(Date today, Date yesterday){
Calendar todayCal = Calendar.getInstance();
todayCal.setTime(today);
Calendar yesterdayCal = Calendar.getInstance();
yesterdayCal.setTime(yesterday);
boolean todayInDayLightTime = todayCal.getTimeZone().inDaylightTime(today);
boolean yesterdayInDayLightTime = yesterdayCal.getTimeZone().inDaylightTime(yesterday);
System.out.println("Yesterday DaylightTime: " + (yesterdayInDayLightTime==true?"Nyari idoszamitas":"Teli idoszamitas"));
System.out.println("Today DaylightTime: " + (todayInDayLightTime==true?"Nyari idoszamitas":"Teli idoszamitas"));
if(yesterdayInDayLightTime == true && todayInDayLightTime == false){
System.out.println("Óra visszallitas -3600");
return -3600;
}
else if(yesterdayInDayLightTime == false && todayInDayLightTime == true){
System.out.println("Óra eloreallitas +3600");
return +3600;
}
else{
System.out.println("Nem történt oraatallitas!");
return 0;
}
} -
RexpecT
addikt
Sziasztok!
Egy szöveges filet akarok beolvastatni és feldolgozni, viszont szeretném validálni, hogy milyen annak a karakterkódolása.
Ezt az alábbi metódussal teszem meg:
public static boolean isValidCharset(final byte[] bytes, String csname) {
try {
Charset.availableCharsets().get(csname).newDecoder().decode(ByteBuffer.wrap(bytes));
} catch (CharacterCodingException e) {
return false;
}
return true;
}Ha UTF-8-ra validálok, és egy olyan állományt adok be aminek Latin2 a kódolása akkor jól működik, viszont fordított esetben nem.
Van valami ötletetek erre?

-
RexpecT
addikt
Lenne egy olyan problémám, hogy egy GUI-s alkalmazásban ha Netbeansből futtatom a programot, akkor megtalálja a képeket a gombokhoz, viszont ha a .jre fájlból akkor nem. A getClass().getResource("../resources/login.png") null -t ad vissza ebben az esetben, pedig a .jre fájl tartalmazza a képeket is.
Van valakinek ötlete?
-
RexpecT
addikt
Az én megoldásom ebben az esetben konkrétan nem gyorsabb, hiszen minden egyes beszúrásnál ki kell keresni, hogy van-e már elem, ez HashMap esetén konstans idejű, de lassabb mintha csak egy List-be szúrsz be, TreeMap esetén pedig logaritmikus. Továbbá az is lassítja, hogy ha még nem volt az adott kulccsal elem, akkor létre kell hozni neki a Listet. Cserébe kevesebb helyet foglal, mint a Te megoldásod, hiszen nem duplikálja a kulcsokat (persze List-ek plusz helyet foglalnak, de ezt az előző simán kompenzálja). Az enyém ott gyorsabb, ha kulcsonként kell lekérni az elemet, a tied lineáris ebben az esetben, enyém a hash esetén konstans, TreeMap esetén logaritmikus. De ebben a példában ez nincs kihasználva. A TreeMap sorrendben is tárolja a kulcsoakt megadott rendezés szerint (String esetén alapból ABC sorrend, a hash-es megoldás viszont random. Továbbá ez egy szebb megoldás, hiszen jobban leírja a feladatot, egy kulcs-hoz több elem tartozik, és csak standard könyvtárbeli elemeket használ. A Guava persze még jobb lenne, de teljesítmény szempontból ugyanazt tudja kb, mint az én megoldásom, csak szebb apit ad hozzá.
Köszönöm

-
RexpecT
addikt
Rendes vagy, hogy megírod helyette.
De miért nem Map<String, List<String>-et használtál az ArrayList<Pair> helyett? (Persze Guava Multimap még jobb lenne, de az itt most nem elérhető).Először LinkedHashMapel akartam csinálni, de utána esett le, hogy ott az újabb már korábban létező kulcs felülírja a régit. Aztán én is rátaláltam a Guava Multimapra, de akkor meg beugrott a fenti megoldás.
Az általad javasolt megoldás gyorsabb az enyémhez képest?
-
RexpecT
addikt
-
RexpecT
addikt
Igen, itt a kérdés, hogy A osztályt ki példányosítja. Ha B, vagy már egyébként létre van hozva, és B ismeri, akkor:
public interface A {
public void processObject(Object o);
}
public interface C {
/**
* processXml(String xml, A a) feldolgozza az xml-t, és az eredményt átadja
* a-nak A#processObject(Object o)-n keresztül
*/
public void processXml(String xml, A a);
}
class B {
A a;
public void newXml( String xml ) {
new C().processXml(xml,a);
}
}
public class CImpl {
public void processXml(String xml, A a) {
Object o = parseXml(xml);
a.processObject(o);
}
}Ha C-ben még szükséged van A-ra, akkor a C konstruktorában is átadhatod, de ez így tisztább, jobban látni a függőséget. Az eredeti kérdés interfészekre vonatkozott. Azt nem tudod meghatározni interfészekkel, hogy a C#processXml() implementációja mi legyen, ezért JavaDoc-ban szokták definiálni, hogy miylen további felelőssége van egy metódusnak.
Már létre van hozva, köszönöm a választ
. -
RexpecT
addikt
Megpróbálom akkor még egyszer.

Van három osztály:
A osztály
B osztály
C osztályA B osztály a háttérben fut, ha kap Blueotoothon keresztül egy XML fájlt akkor C osztályból létrehoz egy új példányt, ami az XML-t parseolja. A C osztály az eredményt egy interfészen keresztül adja át az A osztálynak.
Ha A osztályból példányosítanám a C osztályt, akkor tudom hogy kellene megoldani(pl a C osztály konstruktorában átvenni az A osztály által implementált interfészt, majd azon keresztül visszaüzenni).
De mivel itt B osztályból példányosítok ezért nem tudom, hogy hogyan kellene.Remélem így világosabb
. -
RexpecT
addikt
Valaki tudna egy kis példát arra írni, hogy hogyan lehet az alábbi dolgot megvalósítani interfészekkel:
A osztály
B osztály
C osztályB osztály hívja meg a C osztályt, de a C osztály által meghatározott értéket az A osztálynak kellene megkapnia.

-
RexpecT
addikt
Java Glassfish SSL konfigurálásban tud valaki segíteni?
A cél az hogy egy Servlet SSL-en fogadni tudjon HTTPS üzeneteket illetve indítani is(egyenlőre kliens hitelesítés nélkül).
Sima Servletet már csináltam, és Java kliens felől is használtam már Two-way SSL-t.
Ezen leírás alapján próbálok kicsiholni valamit, de nem sok sikerrel.
Igazából nem is értem, hogy működik, mert a keystorenak meg kell adni a jelszót, hogy betudja olvasni ha kliensből akarok titkosítani.
Na mármost, ha a Glassfishben akarok hozzáadni egy keystore-t akkor ott sehol nem kell megadni a keystore jelszavát. -
RexpecT
addikt
-
RexpecT
addikt
Ha van egy osztályom, aminek van belső osztálya is, akkor hogyan tudom rávenni javadocot hogy ahhoz is generáljon HTML fájlt?

-
RexpecT
addikt
-
RexpecT
addikt
Milyen könyvet ajánlotok JAVA tanuláshoz?
Jelenleg az Agyhullám JAVA-t olvasom, de ajánlották a Java 2 útikalauz programozóknak 5.0 című könyvet is(ha valakinek megvan ez a könyv akkor megvenném). -
RexpecT
addikt
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.
Köszi, tényleg a logika volt hibás. Az előtt hívtam a függvényt mielőtt elkészült volna a GUI így nem volt hova betöltse az adatokat.

-
RexpecT
addikt
Elküldöm privátban
.Taoharcos:
De ez a gond, ha konstruktorból hívom meg akkor nem működik, csak ha a mainből hívom meg(ebben az esetben nem is raktam bele a konstruktorba a hívást).
Egyébként public a láthatósági szintje az eljárásnak, csak innen kimaradt. -
RexpecT
addikt
Van egy osztályom aminek a konstruktora hív egy eljárást ami szintén az osztályon belül van, de nem fut le, csak így:
public static void main(String[] args) {
Gui g= new Gui();
g.initLoad();
}
}Ha a konstruktorból akarom hívni az initLoad eljárást akkor nem történik semmi:
public class Gui implements ActionListener{
Gui(){
initLoad();
................
}
initLoad(){
................
}
}Biztos valami triviális a válasz, de sajna akkor sem tudom :/.
-
RexpecT
addikt
Hát így hirtelen én azt tudom javasolni, hogy csinálj erre egy daemon thread-et, ami kis pioritással fut, és bizonyos időközönként végigmegy a konténeren és kidobja a halott threadeket. Az időközök nagyságára igazából nincs konkrét ötletem, attól függ meddig futnak a szálak, mennyire kritikus, hogy ne legyen sok szemét a konténerben.
Aztán ezzel többet nem is kell foglalkozni, mert a daemon thread ugye meghal ha elfogynak a rendes szálak.Még csak most vettem észre, hogy GUI-t a Palettevel a legegyszerűbb készíteni, van valamilyen hátránya ha ezt alkalmazom?
-
RexpecT
addikt
JavaDB ( másik nevén Apache Derby ). Ezt tartalmazza a Java SE, így mindenhol elérhető adatbázismotor. Asztali alkalmazásokhoz kiváló, bár van pár dolog, amit nem tud, pl. nincsen benne full text search.
Ha egyáltalán nem használtál még semmilyen adatbázist, akkor a tanulás 60%-a inkább az SQL-re fog rámenni, 30% arra, hogyan használd a JDBC-t, maradék 10% meg arra, hogyan lődd be a Derby-t.
Kiindulásnak http://docs.oracle.com/javadb/ -> http://docs.oracle.com/javadb/10.8.2.2/getstart/index.html
Köszönöm
. -
RexpecT
addikt
Sziasztok!
Gyakornoknak szeretnék jelentkezni egy céghez, ahova a jelentkezéshez a beugró egy alap könyvtári nyilvántartó program(bármilyen nyelven meg lehet írni).Na mármost a java.awt.* és swing osztályokat ismerem, tehát a grafikus felületet megtudom csinálni, de azt nem tudom, hogy hogyan kellene egy adatbázis kezelővel egybegyúrni a programot, mivel azt sajna nem tanultuk még.
Esetleg azt tudnám megírni, hogy a felvett adatokat kiírja egy szöveges fájlba, és azt olvassa vissza a program megnyitásakor, de ez elég fapados lenne.
Tudnátok ajánlani valami oldalt, vagy könyvet ami kitér erre a témára, mert ha nem sok idő, akkor talán így a vizsgaidőszakban is lenne rá annyi időm, hogy belejöjjek a témába.Köszi

U.i:
Következő félévben lesz csak Adatbázis kezelésem, szóval biztos hogy hátrányból indulok.
-
RexpecT
addikt
Netbeansben miért nem engedi futtatni ezt a kódot?:
import java.util.Scanner;
import java.io.*;
class Main {
public static void main(String[] args) throws IOException{
Scanner in = new Scanner(System.in);
int numPack = Integer.parseInt(in.next());
for (int i = 0; i < numPack; ++i) {
int number = Integer.parseInt(in.next());
int five = 0;
for (int j = 5; j <= number; j*=5) {
five += number/j;
}
System.out.println(five);
}
}
}Error: Could not find or load main class main.Main
Okés már megvan

-
RexpecT
addikt
Netbeansben miért nem engedi futtatni ezt a kódot?:
import java.util.Scanner;
import java.io.*;
class Main {
public static void main(String[] args) throws IOException{
Scanner in = new Scanner(System.in);
int numPack = Integer.parseInt(in.next());
for (int i = 0; i < numPack; ++i) {
int number = Integer.parseInt(in.next());
int five = 0;
for (int j = 5; j <= number; j*=5) {
five += number/j;
}
System.out.println(five);
}
}
}Error: Could not find or load main class main.Main
Új hozzászólás Aktív témák
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
- Fórumok
- Szoftverfejlesztés
- Java programozás
- (kiemelt téma)
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Mibe tegyem a megtakarításaimat?
- Apple MacBook
- Huawei Watch Fit 5 Pro - jó forma
- Amlogic S905, S912 processzoros készülékek
- Fujifilm X
- TV antenna és jelerősítés
- Samsung Galaxy Watch8 és Watch8 Classic – lelkes hiperaktivitás
- Gyúrósok ide!
- Kerékpárosok, bringások ide!
- One otthoni szolgáltatások (TV, internet, telefon)
- További aktív témák...
- 4000GB Gen4x4 NVMe SSD, 1 év gar 4TB!!!
- SZÉP! HP ZBOOK FURY 15 G7 Tervező Vágó Laptop -70% 15,6" i7-10850H 32/512 Quadro RTX 3000 6GB FHD
- GARANCIÁLIS LEMEZES PLAYSTATION 5 SLIM CFI-2116
- NAGYKER ÁR!Sosemhasznált! HP OmniBook 5 Flip i5-1334U 8GB 512GB 14" FHD+ áthajtós-érintős Gar.: 1 év
- Macbook Pro 14" A2442 2021 M1 Pro 32/1TB Silver
- ÚJ Lenovo LOQ Intel Core i7-13650HX, 32GB, 1TB, RTX 5060(8GB), FHD 144Hz
- Samsung Galaxy S22 / 8/128GB / Kártyafüggetlen / 12Hó Garancia
- BESZÁMÍTÁS! MSI B550 R7 3700X 64GB DDR4 512GB SSD RTX 4060 8GB Zalman S2 TG be quiet! 700W
- BESZÁMÍTÁS! LENOVO Ideapad Gaming 3 notebook - i5 11320H 16GB DDR4 512GB SSD RTX 3050Ti 4GB WIN11
- eShark Karuta Gaming Egérpad - XL eladó 90cmx40cm
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest









