Új hozzászólás Aktív témák
-
Aethelstone
addikt
válasz WonderCSabo #6616 üzenetére
Nos, ugyanarról beszélünk ismét. Mivel tudom, hogy a lista, amit fel kell dolgozzak, milyen elemeket fog tartalmazni, ezért kurvára biztonságos egy explicit cast. Ha meg szétszáll, akkor megnézem, hogy mi is lehet benne és a következő futtatás már jó lesz Nos, valóban...egy listában többféle ojjektum már kövér tervezési hiba.
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
Hát jah. Nekem is fáj pár dolog. Pl. a metódusokban a default paraméterérték megadás. Nyilván meg lehet oldani, de a varargs, a method overload számomra kicsit munkás Aztán miért nem lehet Enum-ot extendálni? Persze, tudom, hogy final, de miért kell annak lennie? Simán lehetne abstract enum is. Néha fájóan hiányzik az, hogy fel lehessen venni mondjuk property-ket, amiket az utódok elérhetnek...
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz beleszólok #6622 üzenetére
Itt egy cseppet másról van szó. Nevezetesen arról, hogy az enterprise java környezetekben a Bean-ek nem önmagukban álló entitások, hanem mindig egy interfész/egy vagy több implementáció szerepel és a dependency injection mindig interfészt injektál és nem konkrét implementációt. (Kivéve amikor több implementáció van, viszont ebben az esetben is interfészként hivatkozunk rá, de az injektáláskor megmondjuk nevesítve, hogy melyik implementációról van szó konkrétan @Resource("akarmi") pl.)
Ebben az esetben egy osztály attól függően hogy milyen interfész implementációjára hivatkozunk, máshogy viselkedik nyilván, tökre elrejti az egyéb funkcióit, amiket sima osztályként el tudnánk érni, de itt szándékosan nem akarunk.
Standalone környezetben nem szokták erőltetni az interfész/implementáció párost, de mint írtam, enterprise környezetben de facto szabvány. Azért de facto, mert elvileg lehet implementációt is injektálni(meg minden egyebet is), de nem szép. Ennyi.
[ Szerkesztve ]
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
Itt nem az ingyenesség a kérdés....első körben Netbeans Java nyelv nincs is....Java van és Netbeans IDE. Hanem hogy annyira nincs közük a dologhoz, hogy ez nem segítségnyújtás lenne, hanem a beadandó megírása más helyett.
[ Szerkesztve ]
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz kornyiktamas #6702 üzenetére
1. A stringet bekéred, majd ellenőrzöd, hogy milyen hosszú, megfelel-e a formátumnak, stb. Ha igen, akkor tovább, ha nem, akkor kiírod, hogy mi a baja és bekéred újra.
2. Ha megvan, hogy mi a dátum szeparátor, akkor simán replace a szeparátorra üres stringgel. Vagy SimpleDateFormat lehet a szofisztikáltabb megoldás.
3. Végigmész a stringen egy for ciklussal és összeadod őket.
4. 3. pont, de csak addig mész, amíg az összeg =>1 és <=9.
Kb.
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz kornyiktamas #6712 üzenetére
Az életben a munkahelyen sem fogják megkérdezni, hogy meg tudod-e csinálni. Kiadják, előveszed a tutorialt, a guglit és megoldod.
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz WonderCSabo #6728 üzenetére
Közép az az alap...
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
-
Aethelstone
addikt
válasz WonderCSabo #6791 üzenetére
A sima SQL-ben is erre való.
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz WonderCSabo #6791 üzenetére
A LIKE egyébként ilyen esetben azért nem túl jó megoldás, mert rohadt lassú tud lenni. Egy IMDB szintű oldal nem tudom, hogy mekkora adatbázissal dolgozik, de >tízmilla(függ sokmindentől egyébként) sornál már masszívan lassú a LIKE...
Nyilván LIKE működhet, de akkor cache tábla vagy valami más varázslás kell
[ Szerkesztve ]
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz WonderCSabo #6796 üzenetére
Azt egy szóval nem mondtam, hogy azt mondtad
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
Akkor szépen végig kell iterálni a String-en. És ha valahol !isDigit(), akkor nem is kell továbbmenni. Pl.
Másik megoldásként lehet a String-ből Integert vagy valami más, szám típusú adatot parseolni és lehet figyelni a NumberFormatException-t.MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz jetarko #6831 üzenetére
Nem teljesen értem, de a lazy-nek nem pont az lenne az értelme, hogy csak azt tölti be, amire szükség van éppen? Ha nem hivatkozol arra a Collectionra, akkor nem töltődik be, ha meg igen, akkor behúzza. Persze, nyilván nem szabad detacholni, de ez már egy másik kérdés.
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
-
Aethelstone
addikt
Elbaxtam. Nyilván JTA-s a cucc. A service és controller réteg között megy a DTO(bean). És a service rétegben lesz az entitásból DTO.
Fáradt vagyok egy cseppet. Ezzel együtt JSP-ben lazy init meg nálam nem menne át a review-enMI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz Aethelstone #6840 üzenetére
Egyébként a Serialization policy is jó, de mi inkább azt az utat választottuk, hogy bean transzformálási szabályokkal korlátozunk. Egy kvázi automata eszközt használunk, ami reflectionnal megy végig és az azonos nevű tagokat transzformálja. Ami pedig nincs benne a Bean-ben vagy máshogy hívják, azt nem transzformálódik.
[ Szerkesztve ]
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz Mukorka #6848 üzenetére
Rosszul érted.
public class FooEntity {
private Set<String> names;
private Set<Integer> values;
}
public class FooBean {
private Set<String> names;
private Set<Integer> values;
private List<Bar> bars;
}Nos, ebben az esetben a FooEntity-ből FooBean lesz, de csak azok a property-k kapnak értékek a Bean-ben, ahol az Entity-ben is van. Nyilván a FooBean bars tagja nem kap semmilyen értéke by default, mivel nincs megfelelő Entity tag. Semmi köze a DAO osztályokhoz.
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
Lehet, hogy nem vagyok ideológiailag elég képzett, de ha Java-ban egy példánynak adunk egy remek null értéket, akkor az egy dolog, hogy azonnal nem lesz legyalulva, majd a GC elintézi vmikor, de onnantól fogva az a példány már nem használható szerte szana az alkalmazásban...innentől nem értem ezt a felhajtást...vagy rosszul olvastam el a hozzászólásokat?
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz cacattila #6875 üzenetére
Nyilván az előző hsz-em alapján, ha nulloz a kolléga egy objektumpéldányt, akkor nyugodt szívvel csökkentheto a számlálóját. Az más kérdés, hogy értelme ennek a feladatnak annyi van, mint 6 pár használt rendőrcsizmának...
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
A Jbossnál ez úgy megy(ahogy emléxem), hogy megadható, hogy a különféle EAR fájlokat ugyanazzal a classloaderrel töltse be. Ami azért fancy, mert a cucc innentől fogva semmilyen más app szerverbe nem telepíthető Amennyiben a kód kihasználja ezt a remek feature-t Legalábbis a 4-es JBoss tudta ezt, azzal találkoztam utoljára.
Egyébként szerintem nem túl szerencsés, hogy a WAR-okat ugyanaz a classloader töltse.
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz geckowize #6921 üzenetére
Vagy ilyet is lehet, ha már a generikusokra rákérdeztél. Ez viszont működik explicit típusokkal is.
(Természetesen a korábban vázolt megoldások tejesen jók)
public class GenericTest<T extends Comparable<T>> {
public T max(T a, T b) {
return (a.compareTo(b) > 0 ? a : b);
}
public static void main(String[] args) {
GenericTest<Double> gt1 = new GenericTest<Double>();
System.out.println(gt1.max(10d, 12d));
GenericTest<Integer> gt2 = new GenericTest<Integer>();
System.out.println(gt2.max(12, 23));
// És így tovább....
}
}Ennek a megoldásnak az az előnye, hogy tulajdonképpen mindenféle típusra lehet max() metódust írni. Kivéve természetesen a primitív típusokat, azokat a generikusok nem támogatják
[ Szerkesztve ]
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz WonderCSabo #6929 üzenetére
Persze, csak a példányosításnál nem tudsz <int>, satöbbi típust megadni...
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz PumpkinSeed #6973 üzenetére
Elvileg...
Az a lényeg, hogy ha minden könyvtár adhat mindenkinek, akkor legyen referencia első körben minden könyvtárhoz minden könyvtárban.
Aztán legyen minden könyvtárnak egy kap metódusa, amivel a könyvtár könyvet kap, visszatérési értékként meg egy másik könyv, amit ad érte.
Aztán minden könyvtárnak legyen egy ad metódusa, amivel könyvet ad. Ez a metódus hívja meg a másik könyvtár kap metódusát, a visszatérési könyvet meg berakja a saját könyvei közé.
Kb.
Persze, ha tömb (inkább valami lista), akkor nyilván figyelni kell olyasmikre, hogy amelyik könyvet adja, annak a helyére kerüljön az, amit kap...stb.
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
szoftvernigger...mi így nevezzük a mezei programozót
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
Ezek tipikus ízlésbeli, de inkább céges policy-beli eltérések. Ezért is van nálunk pl. hogy mindenki azt használ, amit csak akar, a projekt maven, a Jenkinsben olyan mind1, hogy ki és mivel szerkesztette a kódot. Pár alapbeállítás ki van kötve, hogy ne baxjuk össze a kódot, mint sorhossz, stb, de onnantól fogva szabad a vásár.
[ Szerkesztve ]
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
Aethelstone
addikt
válasz WonderCSabo #7066 üzenetére
Hát jah. A matek nagy részét ki kellene dobni egy az egyben és jobban lőni mondjuk a Számítástudomány/Numerikus módszerek tárgyakra. Persze matek alap ahhoz is kell nyilván, de nem ennyi....
[ Szerkesztve ]
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Samsung Galaxy S23 128gb - Makulátlan, akár beszámítással
- AKCIÓZVA! HP EliteBook 850 G7 Fémházas Szuper Strapabíró Laptop 15,6" -65% i7-10610U 32/1TB FHD HUN
- AKCIÓZVA! HP EliteBook 850 G7 Fémházas Szuper Strapabíró Laptop 15,6" -65% i7-10610U 32/512 FHD HUN
- Bontatlan Új BOSE QuietComfort Ultra Headphones, bézs-aranyLimitált kiadás
- ASUS TUF Gaming FX505DU Ryzen 7 3750H GTX 1660 Ti 6GB 16GB DDR4 512GB SSD + 1TB HDD 120Hz Full HD