- 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 Tabletek, E-bookok Nyomtatók, szkennerek 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
-
orc88
őstag
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

-
#68216320
törölt tag
-
#68216320
törölt tag
-
CJ19
csendes tag
-
bambano
titán
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?
ha az üzemeltetés minimális szinten is hozzáértő, akkor nem hagyja, hogy egy olyan gépen buildelődjön a program telepítője, amiről nem tudja, hogy mi van rajta.
tehát minden esetben, amikor a programozó csinálja a telepítőt (nyilván nagyobb projektet feltételezve), ott az üzemeltetés kaszkadőrködik.
ui: láttál már nagyobb halom vírusos telepítőcd-t?

-
Karma
félisten
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?
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.
-
Aethelstone
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...
-
tick
aktív tag
-
Karma
félisten
Í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.
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.
-
Aethelstone
addikt
Kódot tudnál mutatni? Könnyebb lenne...
szerk: Látom, hogy a kolléga is kérte már

-
axioma
veterán
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).
Ezzel mi szivtunk mar... foleg akkor, ha a 32 bites frissebb verzios volt, mint a 64 bites, emlekeim szerint mas volt az eredmeny total commanderbol inditva ugyanazt, mint a telepitett ikonjarol. (TC-bol azert szerette'k a userek inditani, mert ha a TC adminkent futott - eleve ugy tette ki az asztalra az ikont -, akkor az abbol inditott jre is, es tudott akar "sajat maga ala" file-okat masolni; mig a normal userkent inditott, akkor is ha maga a user admin jogu, a jre csak normal user joggal futott, es nem tudott a vedett konyvtarakba file-t letrehozni.) Anno a regebbi kod az uj jre-vel azon hasalt el, hogy bejott a nemzeti beallitasok kezelese (tizedesvesszo a pont helyett), es az egyik kollega egy tortszamokbol allo listat (egyszeru gps koord.) a vesszo mente'n split-elt...
-
M_AND_Ms
veterán
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).
A command prompt-nál kiadott bármilyen programindítás (jelen esetben a java.exe) minden estben a PATH szerint lesz végrehajtva.
Tehát ott az elsőnek talált java.exe lesz elindítva. A JAVA_HOME csak a java környezeten belül van értelmezve -
floatr
veterán
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?

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
-
WonderCSabo
félisten
É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ő.
-
WonderCSabo
félisten
-
Szmeby
tag
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;
}
}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. -
Aethelstone
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;
}
}Időszerver szinkronizálás.
-
axioma
veterán
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ő).
1. ha csak napi 1x kell akkor nem tok mind1, hogy telen 7-kor nyaron 6-kor?
2. ha nem mindegy, akkor is ugy csinalnam, hogy utolso futasi idohoz az altalam irt modon adok 1 napot, es ahhoz hasonlitok -- mert ez fgtl attol, hogy esetleg milyen egyeb valtoztatasok lesznek a naptarban (en ugy 30 evvel ezelott gyerekkent az azt hiszem Furkesz c. gyerekmusorban lattam a jovo naptarat, amit mar akkor jelentos mennyisegu orszag elfogadott, ehhez kepest arrol sincs azota se semmi -- a munkaltatok es konyvelok a'lma, minden negyedev tok azonos 31-30-30 honapokkal es mindig hetfovel kezdodik stb.)
3. a daylight saving ma mar a jelentos mernoki munka miatt amit az ilyen esetekre koltenek mar ossztarsadalmilag boven negativ egyenlegu... -
axioma
veterán
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;
}
}En lehet hogy forditva csinalnam... nem kovetkeztetni a hossz modositasara, hanem az aktualis datumot visszabontani datumra es idore, datumbol 1 levon (az mar csak egyszerubb, me'g ha honaphataron is van), az idovel egyutt vissza long-ra, es az a tartomany eleje. Ha jol ertem, hogy mit akarsz csinalni (azaz a mai 7:00am lefuttataskor az a lenyeg, hogy a tegnapi - helyi ido szerinti - 7:00am ota eltelt idoszakba beleesest akarod tesztelni).
-
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.
-
Aethelstone
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?
Próbáld meg nem relatív(../), hanem abszolút(/valami/valami) útvonallal!
-
cinkoxid
senior tag
-
WonderCSabo
félisten
-
WonderCSabo
félisten
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á.
-
WonderCSabo
félisten
-
modder
aktív tag
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
.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.
-
Superhun
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
.Az A osztályt ki példányosítja?
-
#39560925
törölt tag
Próbáld meg lerajzolni UML osztálydiagrammot.
-
Superhun
addikt
-
Peter Kiss
őstag
-
modder
aktív tag
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.lehet, hogy webes adminból nincsen rá lehetőség, de emlékeim szerint a domains.xml-ben ott van a default jelszó 'changeit' a keystore definíciójánál
-
Superhun
addikt
-
Frigo
őstag
Hivatalos Oracle tananyagot érdemes olvasgatni,belehet szerezni ebook formátumban is. Agyhullámból még jó a Object Oriented Design & Analysis és a Design Patterns illetve ha érdekel a webprogramozás akkor Servlets & JSP.
-
Taoharcos
aktív tag
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 :/.
Mivel a Gui osztály konstruktorában szerepel az initLoad meghívása ezért felesleges azt újból meghívni. El kell dönteni honnan akarod meghívni. Automatikusan a konstruktorból, vagy külön metódusként, de akkor viszont ne szerepeljen a konstruktorban. illetve lehet hogy a láthatóság miatt az initLoad eljárást public-á kéne tenned.
-
Gyuri16
senior tag
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 :/.
tudsz mutatni egy minimalis mukodo (lefordithato) programot ahol jelentkezik amit irsz?
-
modder
aktív tag
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.
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
-
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

Ú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 Tabletek, E-bookok Nyomtatók, szkennerek 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?:))
- 2.5" 100% noti HDD-k Western Digital, Seagate 320Gb (3k) +1Tb (15k) van 1db SSHD is (15k)
- Lenovo P16s gen2 16" //Core i7 1360P // Nvidia RTX A500 4GB GDDR6 // 16Gb /512GB SSD/ gyári garancia
- Micron és Samsung 32GB ram 1 x 32GB 3200Mhz vagy 2 x 16GB 2666Mhz - több db elérhető
- Lenovo M720q Mini PC - Core i3 8100T vagy Core i5 8500T- 8GB vagy 16GB ram - 256/512GB SSD - több db
- 4000GB Gen4x4 NVMe SSD, 1 év gar 4TB!!!
- AKCIÓ! Asrock Z270 i7 6700K 16GB DDR4 512GB SSD RTX 2060 6GB GameMax Storm 2 AB Adata 600W
- Lenovo T490S i5 8365U, 16GB RAM, 256GB SSD, jó akku, számla, 6 hó gar
- Utolsó M1 Max MacBook Pro 16"/ 64GB / 2TB / Space Gray/ 27%-os ÁFÁS
- (TÖBB DARAB, KÉSZLETEN) GIGABYTE / ZALMAN / FSP ATX 400W / Tápegységek
- Thermal Grizzly Aeronaut paszta 3,9g /BONTATLAN/Több darab/Számlával!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


) hiába adtam már hozzá az objektumot, kitörli belőle a String lista tartalmát és üresen adja át 





