- Fórumok
- Szoftverfejlesztés
- Java programozás
- (kiemelt téma)
-
11400 - 11301
12209 - 12201 12200 - 12101 12100 - 12001 12000 - 11901 11900 - 11801 11800 - 11701 11700 - 11601 11600 - 11501 11500 - 11401 11400 - 11301 11300 - 11201 11200 - 11101 11100 - 11001 11000 - 10901 10900 - 10801 10800 - 10701 10700 - 10601 10600 - 10501 10500 - 10401 10400 - 10301 10300 - 10201 10200 - 10101 10100 - 10001 10000 - 8001 8000 - 6001 6000 - 4001 4000 - 2001 2000 - 1
-
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ékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - 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! 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
-
floatr
veterán
-
mobal
nagyúr
-
WaterWawe
őstag
-
Lortech
addikt
-
mobal
nagyúr
-
WaterWawe
őstag
-
mobal
nagyúr
-
WaterWawe
őstag
-
Drizzt
nagyúr
-
WaterWawe
őstag
Sziasztok!
mvn exec:java -Dexec.mainClass=cinema.Program -Dexec.args="http://localhost:8080/WebService/Cinema A 5 Lock"
Az fent látható paranccsal szeretnék futtatni egy "Maven simple project"-et. A problémám ott kezdődik, hogy a program argumentumaként adott URL-t a maven megpróbálja pluginként feloldani. Nem meglepő módon, nem talál hozzá metadatat és elhal a build.A program Eclipseből indítva ugyanezekkel az argumentumokkal, hibátlanul működik. A cinema.Program osztály is megfelelően van benne. Mondhatnátok persze, hogy futtassasm Eclipse-ből, de egyetemi feladathoz kell és gondolom így fogják tesztelni.
Bármi ötlet, hogy ez mitől lehet?
(Én alapvetően .Netes vagyok, szóval most először dolgozom mavennel.
) -
floatr
veterán
-
Szmeby
tag
Úristen, ez már ennyi ideje így működik?

Értem én, hogy kényelmes, de azért na, hát mióta nem antipattern a repository megnyitása a nagyvilágnak?! Legalább egy bekapcsoló annotációt el tudtam volna képzelni ehhez a remek fícsörhöz.
Minden esetre nagyon köszi a linket, ma is okosabb lettem. -
Drizzt
nagyúr
Ez a Spring Data Rest default viselkedese. Convention over configuration, mint megannyi mas helyen a spring bootban.
Megfeleloen uj Spring verziokkal o lesz a baratod: [stackoverflow: set exposed repositories to annotated only. ] -
Szmeby
tag
Spring boot 2.4.0, data-jpa és data-rest függőségekkel. Jó, van még egy h2 db, meg egy actuator, de az nem számít. Semmi konfiguráció, sem extra függőség, nem értem.
Szóval csináltam egy hót egyszerű spring boot appot, tettem bele egy City nevű jpa entity-t, meg hozzá egy töküres JpaRepository-t. Zéró REST végpont mutat bárminemű City-vel kapcsolatos dologra, mégis, amikor megkérdezem a root végpontot, akkor ezt a fenti izét nyomja az arcomba.
Az összes végpont, amit csináltam egy "/hello", és a hello world-ön kívül semmit sem csinál.Már átnéztem a spring doksi teljes hateoas szócikkét, de egy falat megjegyzés sincs arról, hogy a spring kitalált nevű végpontokat szór fel nekem az alkalmazásomra csak úgy, expozálva ezáltal az app belső dolgait, konkrétan az entitások neveit. Egyrészt ez felháborító, hogy kérdés nélkül ilyet csinál, másrészt ti találkoztatok ezzel? Miatököm csinálja, és hogyan lehet kikapcsolni?
-
Aku-Aku
tag
-
togvau
senior tag
Hello
Csináltam egy sql view-et, ami ugyan azt adja vissza mint az eredeti tábla, csak picit módosítva (előjelet cserél pár szám mezőben).
Gondoltam, csak simán származtatom az eredeti classból az új entity-t, ami tök üres, mert mindent tartalmaz az eredeti, csak a @table name más.
Na hát elszállt, egy értelmetlen exceptionnal mindig, egy értelmetlen nevű oszlop hiányára hivatkozva, amit az SQL kiíratással sem lehet beazonosítani.
Akkor is elszállt, ha nincs is lekérdezés az új entityvel, hanem a régivel, eltelt egy kis idő, hogy rájöjjek, az új entityt el kell tűntetni, és jó lesz a régi... komolyan kiválóan van megcsinálva ez
A lényeg, hogy a hibaüzenetek egyikére rákeresve, arra találtam, hogy itt konkrétan közös táblát akar találni, pedig nekem az kellene, hogy semmi közük egymáshoz, csak a struktúra ugyan az. Erre találtam az @Inheritance annotációt, aminek typejaiban nincs olyan, hogy ne inheritáljon semmit.
Most copy paste-ként származtatás nélkül jók az új entityk, de ez csúnya. Hogy lehet elérni, hogy felejtse el azt, hogy bármi közöset keressen a szülő, és az új entityben? @MappedSuperclass ugye nem jó, mert mindkettőnek entity-nek kell lennie, a szülőnek, és a gyereknek is.
-
btraven
őstag
-
Gyuri16
senior tag
Itt csak a megnevezesekben van kis kavarodas. Es abban, hogy a mapper fuggvenynel a Function volt generikus, itt pedig a src es dest valtozok (tipikusan valamilyen Collection).
A valtozok felhasznalasat kell nezni. A src egy Collection, ebbol a copy fuggveny olvasni fog ("The src argument provides the data to be copied"). Tehat a src egy producer.
A dest valtozo az eredmeny, ebbe a fugveny irni fog, tehat consumer. "the dest argument accepts data" -
btraven
őstag
[link]
An "In" Variable An "in" variable serves up data to the code. Imagine a copy method with two arguments: copy(src, dest). The src argument provides the data to be copied, so it is the "in" parameter.
An "in" variable is defined with an upper bounded wildcard, using the extends keyword.Ott meg a bemenet consumer-re super-t ír?
-
togvau
senior tag
Az indiai fejlesztők miatt, gondolom.
-
VikMorroHun
őstag
Az mé' van, hogy Java frissítés telepítésénél ha a felhasználó a licenc kérdésnél véletlenül az eltávolításra kattint, akkor se ellenőrző kérdés, se vissza lehetőség nincs, onnan kezdve fixen el lesz távolítva a Java (frissítés helyett)?
-
Gyuri16
senior tag
Ha nem akarsz rajta gondolkodni, akkor eleg megjegyezni hogy "Producer extends Consumer super" - PECS.
mapper fuggveny elso parametere a bemenet, ez consumer. A masodik az eredmeny ez a producer.
Ha erdekel bovebben, akkor lehet itt kezdeni: [link]
Igaz collectionokrol van szo, de a lenyeg ugyanaz.map fuggvenynel maradva, vegyunk egy konkret mapper implentaciot.
mapper fuggveny parametere egy valtozo. Azt akarod, hogy a valtozo el tudjon tarolni egy T tipusu objektumot. Milyen lehet a valtozo tipusa? Nyilvan lehet T. Lehet-e T-tol leszarmazott osztaly? Nem, mert akkor nem tudna egy T tipusu objektumot tarolni (pl. Integer valtozoba nem lehet Object-et tarolni). Lehet-e T elodje? Igen, altalanosabb tipusu valtozoba lehet leszarmazott osztalyt kuldeni. (ismet: Object-be lehet Integert). Ezert super.Nezzuk a mapper fuggveny eredmenyet. Itt azt szeretned, ha egy R tipusu valtozoba el lehetne menteni.
R eredmeny = mapper(bemenet);
Milyen osztalyokra igaz ez? R lehet. R elodje nem lehet (Integerbe Object-et). R-tol leszarmazott lehet. Ezert extends.Ha eloszor foglalkozol ezzel, kicsit zavaros lehet. Ajanlom, hogy probald ki egy egyszeru A->B->C hierarchian Collectionokkel (ami a linkben van).
mod: amig irtam, nyilvan megeloztek
most mar itthagyom, hatha segit a magyar verzio. -
disy68
aktív tag
"ilyen esetben nem sérül a clean code elmélete?"
szerinted mi sérül?
"miért (...)"
Producer Extends Consumer Super
illetve -
btraven
őstag
<R> Stream<R>map(Fucktion<? super T,? extends R> mapper)ilyen esetben nem sérül a clean code elmélete?
Előző példánál maradva e -> e.getValue0()
miért? super T
az első type pataméter és miért? extends R
a második?vagy kár ezen filózni, elég "bután", rutinból használni ezeket a fucktional interface-ket és lambdákat?
-
togvau
senior tag
ezt én is megtaláltam, de itt is látszik, hogy nincs normális megoldás. Azért az vicc, hogy ennyire összevissza működik valami... simán IDE-ből futtatva a projektmappában keresi, *ar-ba fordítva windowson a *ar mellett, linuxon viszont a user home-ban... és ez lenne a multiplatform

Ez sem értem, org.javatuples csomaggal:
storeItemTupleList.stream().map(e -> e.getValue0()).collect(Collectors.toList())Ez runtime hasal el:
java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to org.javatuples.PairAkkor is ugyan ezzel a hibával hasa hasonlónáll, amikor vaadin grid<Pair<BigDecimal, String> setitems-t hívok és ilyet raknék be List<Pair<BigDecimal, String>>
Ez is csak runtime.Ez miért van?
Nincs kedvem külön DTO-t tákolni...
-
Szmeby
tag
Vannak bizonyos allami projektek, ahol elvarjak, hogy az ember rendelkezzen ezzel, vagy legalabb plusz pontnak minosul.
Nekem sokat segitett abban, hogy jobban megertsem a java furcsasagait, azokat a nuansznyi jellegzetessegeket, amivel az ember vagy egyszer az eletben talalkozik, vagy ugy megszokta mar, hogy fel se tunik neki. De ehhez mondjuk nem feltetlenul adnek ki soksok penzt a vizsgara, mert megtanulni ezeket ingyen is meg lehet, ott a java tutorials weboldala vagy mi a tokom a neve, minden info ott van szepen. Fake tesztekbol is Dunat lehet rekeszteni, ha valaki teszelni kivanja magat.
Jol mutat de hat na. Sok eve mar, hogy megcsinaltam, de ha az ember nem talalkozik azokkal a problemakkal, elfelejtodik, ahogy altalaban a dolgok az eletben. Es akkor megint ott vagyunk, hogy mindenki ahhoz ert a legjobban, amivel aktualisan foglalkozik.

-
mobal
nagyúr
-
btraven
őstag
OCP könyvből idézek:
"On the OCA, you learned that you could create a date using a factory. If you’ve forgotten how, don’t worry."Akkor miért tette le az OCA vizsgát ha mindent elfelejtett? Csak azért hogy legyen papírja?

-
togvau
senior tag
hogy lehet megaszondani, hogy a fájlt (string-ben van megadva a path majd Paths.get() ) az alkalmazás mellől olvassa? Tehát aprojektem mellé rakott fájlt akkor is ha IDE-ből indítom run-al, meg akkor is ha jar-ba van exportálva, és java -jar-al indítom.
Mert ugye ha simán fájl.txt akkor ide-ből indítva a projekt mappában keresi, jar-ba exportálva a jar mellett keresi, de mindenképpen relatív path maradjon, és kíndózon, linuxon ugyan az legyen a végeredmény. -
sztanozs
veterán
-
mobal
nagyúr
-
floatr
veterán
-
sztanozs
veterán
Sajnos szerintem ez csak akkor fut le, amikor tényleg kihúzták a számokat - viszont találtam a pythonhoz time-machine modult is - azzal biztos működnie kéne

-
btraven
őstag
-
sztanozs
veterán
-
Zsoxx
őstag
-
Szmeby
tag
-
btraven
őstag
Írtam egy ötöslottó számokat generáló programot. Nem tudom mi lehet vele a baj. Kiad 5 számot, de nem a nyertes számokat. Még egy számot se talált el.
-
smallmer
őstag
-
Chrystall
senior tag
Tudnátok segíteni abban, hogy lehetne összehozni helyesen az alábbi két szkirptet? Nem tudom szintaktikailag hogy lenne jó, nem értek a Javához. A lényeg, hogy az if-es rész megnézi szerepel-e a webcímben az adott string, ha nem, lefuttatja a további részt.
if(document.URL.indexOf("searchtext") = -1) { """"kód"""" }
És akkor a """kód"""-részben ez lenne:
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
style="display:block;height:140px;border-collapse:collapse;"
data-ad-client="xxxxxxxxxxxxxxx"
data-ad-slot="xxxxxxxxxxxx"
data-ad-format="horizontal"
data-full-width-responsive="true"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
-
#68216320
törölt tag
Sziasztok.
Kis segítséget kérnék.Milyen megoldással lehetne úgy futtatni egy külső (linux) parancsot, hogy a futása közben a konzolba kiírt tartalmat egy változóba/tömbbe kapja meg a hívó java class, hogy fel tudjam dolgozni.Például egy "ls" parancs (windows esetén ez a dir) a listázott fájlokat/könyvtárakat egy array vagy string-be tegye.Nem tudom mennyire érthető a feladat?Közben meglett

ProcessBuilder és getInputStream -
floatr
veterán
-
buherton
őstag
Sziasztok!
Eddig jó részt C-ben programoztam, meg egy kicsit C++-ban, de nem vagyok a modern nyelvi elemek tudora. Ellenben jövőre JavaEE-ben kell majd programoznom és szeretnék előre felkészülni.
Tudnátok ajánlani olyan tréning anyagot ami lefedi a JavaEE-t és esetleg a magasszintű pepgramozást is?
-
Aku-Aku
tag
-
Drizzt
nagyúr
Erre biztosan nem lesz szükséged. Ez beállítja aktív profilnak a @spring.profiles.active@-at, ami nagyon valószínű, hogy nem létezik. Szóval nyerni nem nyersz vele.
A logban hiba nincs. Viszont hiányzik belőle, hogy a Tomcat elindulna a 8080-as porton, mint ahogy a példa screenshotján is van.
Annyit látok a logodban, hogy a "D:\eclipse_workspaces\java_coding_exercises\HelloWorld_Example\target\classes" könyvtár biztosan rajta van a classpathon. Mik vannak ebben a könyvtárban? Benne van a ApplicationConfiguration.java? Illetve egyáltalán a Spring MVC-s dependency-k ott vannak? Távolról ezt elég nehéz diagnosztizálni. -
Aku-Aku
tag
Ja és itt van az application.properties tartalma:
spring.application.name = HelloWorldExampleApplication
server.port=8080
spring.profiles.active=@spring.profiles.active@ -
Aku-Aku
tag
2020-12-04 17:35:24.343 INFO 2816 --- [ main] c.e.demo_2.HelloWorldExampleApplication : Starting HelloWorldExampleApplication using Java 1.8.0_181 on GotrekGurnisson with PID 2816 (D:\eclipse_workspaces\java_coding_exercises\HelloWorld_Example\target\classes started by Apa in D:\eclipse_workspaces\java_coding_exercises\HelloWorld_Example)
2020-12-04 17:35:24.346 INFO 2816 --- [ main] c.e.demo_2.HelloWorldExampleApplication : The following profiles are active: @spring.profiles.active@
2020-12-04 17:35:24.806 INFO 2816 --- [ main] c.e.demo_2.HelloWorldExampleApplication : Started HelloWorldExampleApplication in 0.782 seconds (JVM running for 1.406)Ez van a konzolon.
Itt már látszik, hogy próbálkoztam a profillal. -
Drizzt
nagyúr
-
Aku-Aku
tag
Köszi!
Közben pontosan azt csináltam amit most látok, hogy javasoltad.
De, az egész dolog több sebből is vérzik sajnos.
Kezdjük ott, hogy ha elindítom az alkalmazást 3 sor üzenet után rögtön terminálódik. Próbáltam valami profile dolgot csinálni mert arra is panaszkodott, de hiába, nem segített. Vagy igen, de az kevés volt.
Nem jövök rá, mi az ami hiányzik.
Ha van valami tanács, hogyan maradjon életben az applikáció annak nagyon örülnék. -
Drizzt
nagyúr
Ranezve a @RestController komponensre gondol konfiguracio alatt. Nem vilagos, hogy miert igy hivja.
Mindenestre annyi az egesz, hogy a HellowWorldExampleApplication.java melle csinalj egy ApplicationConfiguration.java nevu fajlt, a kepen megadott tartalommal, s ennyi. Rakhatod olyan package-be is, ami melyebben van, mint az HelloWorldExampleApplication, mert a component scanninggel azt is meg fogja talalni. -
Aku-Aku
tag
Sziasztok!
Az alábbi tutoriálon (Eclipse, Java, Spring Boot, Microservice) próbálok végigmenni:
[link]
Ott akadtam el, hogy valami configuration fájlt kellene csinálni, ezt írják róla:
"Even though this application acts ready as a stand-alone application, we will still add a configuration file to it. This will help us handle the HTTP requests. Refer to the snapshot below."
Szerintetek hogyan kellene elkészíteni és hogyan kellene hozzáadni az alkalmazáshoz?
Előre is köszi. -
Szmeby
tag
Az altalad emlitett absztrakcios szinten (milyen erteket vehet fel a valtozo, mi irja es mi olvassa, hany kozbeiktatott metodushivas van, stb) valoban nincs ertelme a getter setter-szeru megoldasoknak. Csak utban vannak.
Viszont az OOP _nem_ ezen az absztrakcios szinten ad valaszokat. Ez nagyon fontos, mert majd igy tudod csak feltenni a jo kerdest. Az OOP eseten sokkal fontosabb kerdes, hogy mi az osztaly celja, mi a SZANDEK, ami az osztaly letet igazolja. Ez mar filozofia, madafaka!

Szoval egy pelda kedveert ha van egy osztalyod, ami egy teglalapot reprezental, akkor valoszinuleg van neki olyan mezoje, ami a szelesseget, meg egy olyan, ami a hosszusagot tarolja. Adna magat a dolog, hogy legyen public es csokolom. DE ha ennek az osztalynak az a szandeka, hogy segitsen az adott sikidom teruletenek, keruletenek meghatarozosaban, akkor a tobbi osztaly fele' kotelessege csak ezt a infot kommunikalni, es semmi tobbet. Ugyanis, ha ennel tobb infot kommunikalna kifele, akar a szelesseget, hosszusagot, akar ezt meg irhatova is tenne, abban a pillanatban behozna pl azt a kockazatot, hogy ezzel mas osztalyok visszaelnek.
Amivel visszaelhetnek, azzal vissza is fognak elni. Hidd el, nem akarsz egy spagetti kodban konyekig turkalni egy apro kis bug megszuntetese celjabol... mikozben 20000 sort kell modositanod ilyen olyan helyeken, mert minden mindent is hasznal.
Tehat a szoftverfejleszto epelmejusege megorzese celjabol fontos az, hogy egy osztaly kizarolag azt az infot adja ki magabol, amire terveztek, es semmi tobbet. A legtobb esetben pedig ez az info koszonoviszonyban sincs az osztaly tenyleges allapotaval. Hiszen a szandek es az allapot fizikai reprezentacioja elter minden olyan esetben, amikor az az osztaly tenylegesen csinal is valamit. A szoftvereket pedig azert keszitjuk, hogy csinaljanak valamit.
Igy aztan egy eszen jo okolszabaly tud lenni a mezok elrejtese. -
Gyuri16
senior tag
Hátránya hogy lassabb mert van közben egy metódus hívás.
Nem feltetlenul, compiler ilyen dolgokat tud optimalizalni.
Az elonyokrol mar irtak a tobbiek. Ha bovebben erdekel nezz utana valamilyen objektumorientalt programozasrol szolo konyvben/cikkben mirol szol az encapsulation.
Ezeknek az OOP elveknek az elonye altalaban akkor latszik, ha az ember valami bonyolultabbat csinal. Vagy ha az eredetileg egyszeru osztalyokba uj dolgot kell hozzaadni. Ilyenkor elonyos ha mar az elejetol ugy volt irva a kod, hogy kesobb konnyu legyen valtoztatni. Viszont nyilvan tulzasba esni se jo, felesleges tulbonyolitani egy egyszeru kodot csak azert, mert egyszer lehet hogy szukseg lesz ra.
Peldadhoz visszaterve: ha letrehoznal kesobb egy olyan osztalyt, ahol az x koordinata erteke csak egy kisebb intervallumbol lehet, akkor sokkal egyszerubb lesz megoldanod, ha a kodban mar van egy setter. Anelkul minden egyes helyet ahol uj erteket allitasz be at kell irnod.
-
sztanozs
veterán
Ez a rossz, példa, mert általában nem ez a tipikus. Persze ebben a példában tök felesleges őrizni a paramétert.
-
audiophile2!
csendes tag
Rosszul kérdeztem, rossz példával

Egy osztályban van 1 int x koordináta. Ennek bármilyen értéke lehet Integer.MAX_VALUE és Integer.MIN_VALUE között.
Én csak azt látom eddig csak a getter/setter előnyének hogy ha 100 helyen olvassák és 1 helyen írják akkor könnyű megtalálni azt az 1 módosítási helyet.
Hátránya hogy lassabb mert van közben egy metódus hívás. -
sztanozs
veterán
-
axioma
veterán
-
mobal
nagyúr
-
Zsoxx
őstag
Ráadásul a setterben kontroll alatt tarthatod a bemenő értékeket (nem enged akármilyen értéket átadni a változónak).
-
mobal
nagyúr
De ha nem veszel fel hozzá akkor nem publikus.
Egy osztályod belső állapotát tárolod egy változóban. Biztos, jó ötlet, hogy boldog és boldogtalan módosítani tudja? Nem. Ha viszont ez az elvárt akkor ott a lehetőség rá.
-
audiophile2!
csendes tag
Miért melegen ajánlott egy osztályban a private field?
Hiszen ha felveszek hozzá egy public setter-t akkor ugyanott vagyok mintha publikus lenne.class X {
private int y;
public setY(int y) {
this.y = y;
}
} -
Zsoxx
őstag
Kismillió ilyet találsz a Youtube-on, akár magyarul is.
https://www.informatikatanarok.hu/erettsegi-feladatok/emelt-szintu-informatika-erettsegi-feladatok-es-megoldasok -
artiny
őstag
[JAVA tanulás] kozep sulis szintu java alapokat keresek, esetleg erettsegi teteleket kidolgozva, magyarul vagy angolul gyerekeknek irodott anyagot /foleg interaktiv/ ?
szeretnek megtanulni JAVA zni , es azt alacsonyabb szinten, lebutitva kezdeni,hogy mindent jol ersek es fokozatossan neheziteni az olvasmanyokat/videokat/tananyagot/andoroidos tanito app/ - barmi johet
-
Szmeby
tag
BorderPane, VBox, ImageView, GridPane, ...
Nem csak a kinezet szamit, hanem a szandek, hogy az adott komponens milyen problemat old meg, milyen modon, szoval ezt neked kell igazabol tudnod, mibol melyik lesz a megfelelo, a menusort csinalhatod gombokkal, linkekkel, menuitem komponensekkel, es szamtalan mas modon, rajtad all.A dokumentacio mindig jo kiindulopont szokott lenni.
Javaslom, hogy dobd fel a gepre a scene buildert, abban egerrel szepen ossze tudod kattintgatni es kiprobalni a kulonbozo layoutokat.
-
bggmnd
csendes tag
-
taf120
csendes tag
-
mobal
nagyúr
-
Drizzt
nagyúr
-
taf120
csendes tag
Ezt szeretem. Ha debugger-ben jól működik a program, egyébként meg nem.
-
Zsoxx
őstag
-
bggmnd
csendes tag
Sziasztok!
Egy java windows alkalmazást készítek Java FX használatával.
Szeretnék tőletek kérni segítséget abban, hogy mi a legegyszerűbb és legszebb módja annak, hogy az egyik menüre kattintva egy tájékoztató szöveg jöjjön be néhány képpel? Nem tudom, hogy mibe rakjam a szöveget, hogyan építsem fel, stb...Köszönöm szépen
-
mobal
nagyúr
-
taf120
csendes tag
OCP könyvben az van írva: Count=2 ?
Stream<Integer> fromArray = Stream.of(1,2,3);System.out.println(fromArray.count()); -
Szmeby
tag
Sajnálattal hallom. Az én emlékezetem is egy aranyhaléval vetekszik. Javaslok egy jelszókezelőt, nekem bevált.
Bizonyára megtehetné, hogy mindkettőt nézi, persze. Csak ez az extra kényelem a háttérben iszonyatos komplexitást generál. A fejlesztők hoztak egy döntést, hogy ez a kényelem nem tesz hozzá annyit, hogy emiatt a framework mondjuk lomha legyen.
Persze ha tudsz egy olyan megoldást, ami nem rontja a framework hatékonyságát, mégis kényelmes, javaslom, beszélgess a hibernate készítőkkel, talán vevők lesznek az ötletre. A hibaüzi mondjuk jól hangzik.
-
floatr
veterán
https://docs.jboss.org/hibernate/orm/5.1/userguide/html_single/chapters/domain/access.html
Azért használ eltérő módszert a két elérésre, mert field access esetében kell proxy/introspection/reflection. A hiányosság itt a framework és a technológia ismeretében van. -
togvau
senior tag
Én arra se emlékszem amit múlt héten olvastam, főleg ha nem találkozok rendszeresen az ott olvasott dologgal. Sajnos nem fér el a sok számot, kis-nagybetűt, és most már speciális karaktert is kötelezően tartalmazó jelszavak, meg az évszak divatjainak megfelelő frameworkok felesleges infoi mellé.
Annyira nem közismert, hiszen akkor a google-n rögtön kidobott volna rá ilyen megoldást, még is, erre a hibára csak a rossz importos válaszú dolgokat dobta fel.
Igényes munkát nem akarok végezni, hiszen egy igénytelen ürülékrakást kell úgy ahogy használhatóvá tákolni, hiszen újraírásra (amivel igényessé lehetne tenni) nincs pénz
Mi a nevetséges abban, hogy egy hiányosságot fikázok? Ez egy marhaság. Default mindkettőt néznie kéne. De legalább is specifikus errorban jelezni, hogy máshogy kéne.
-
Szmeby
tag
Én például onnan tudom, hogy valamikor régen olvastam a hibernate dokumentációjában. Szerintem elég közismert dolog... legalábbis a dokumentációba belelapozó emberek között. Én úgy vagyok vele, hogy ha igényes munkát akarok végezni, akkor érdemes megismerni a használt frameworkot kicsit közelebbről is. Így amikor fikázom, talán kisebb eséllyel teszem magamat nevetségessé.

szerk.: A jelenség a transient módosítótól teljesen független.
-
togvau
senior tag
-
floatr
veterán
A hibernate az @Id annotáció alapján választ stratégiát arra, hogyan kezelje a bean adatait. Ha field-en van, akkor reflection-t használ mindenre, ha getteren, akkor a metódusokat. Vegyesen csak akkor lehet használni, ha felülcsapod a default stratégiát egy
@Access(AccessType.FIELD)annotációval, amit a field-re akasztasz rá.Imádkozás helyett specifikáció, vagy tutorial. Ez a középkorban is sokszor bevált volna.
-
togvau
senior tag
JPA: eddig én a saját cuccaimban, és a munkáknál is az entity osztályoban a field deklarációk fölé raktam az annotációkat, pl a a kapcsolatok, vagy a @Transient-et is.
Mostani projektben a getterek fölött van, úgyhogy igazodtam ehhez, egy kivétellel amikor egy @Transient fieldet csináltam. Aztán folyamatosan elszállt runtime, hogy nem találja azt a fieldet... javax persistence transient volt pedig, de a spring datással is ugyan ez.
Aztán "áh ez már kb az imádkozás szint" átraktam a getter fölé, és megy...Ez WTF?
-
togvau
senior tag
sikerült ez is, meg másikat is, mindent full generikusra sikerült csinálni

-
togvau
senior tag
Látom, elég csak a kimenetnél megszabni a korlátozást, és az a bemenetre is vonatkozik.
De újabb probléma: a newClass-nak vannak tételei is listában, minden invoice-nak saját fajta... azok is egy közös abstract osztályból származnak, de hogy tudok nem fixen létrehozni tétel osztályt?
kimeno.callTetelekLista().getClass().getGenericSuperclass(); talán így meg van a listaelemek osztálya (már ha akkor is működik ha a call null-t ad vissza, mert nincs list még hozzáadva)
(mert futás időben nincs generikus)De hogy ha van egy metódus, hogy getItemType és abba egyenként fixen meg van adva entitynként, hogy mi tartozik hozzá, akkor be tudom szerezni a classt. Viszont hogy hozom létre, hogy hozzáadhassam a listához? newInstance oké
-
Drizzt
nagyúr
-
togvau
senior tag
-
Drizzt
nagyúr
-
disy68
aktív tag
protected static <T extends AbstractInvoiceEntity> T getInvoiceEntity(AbstractInvoiceEntity originalEntity, Class<T extends AbstractInvoiceEntity> newClass) {T newInvoice = newClass.newInstance();(...)return newInvoice;}
valami ilyesmi vagy átadsz egy factory-t, ami létrehozza a kívánt objektumot -
togvau
senior tag
protected static KimenoSzamlaEntity getInvoiceEntity(AbstractInvoiceEntity originalEntity) {KimenoSzamlaEntity kimeno= new KimenoSzamlaEntity();BeanUtils.copyProperties(originalEntity,kimeno,"parentInvoice", "identifier");List<KimenoTetelekItemsEntity> items=new ArrayList<>();for (AbstractInvoiceItemsEntity item: originalEntity.callTetelekLista()) {KimenoTetelekItemsEntity itm= new KimenoTetelekItemsEntity();BeanUtils.copyProperties(item,itm, "parentInvoice", "identifier");itm.setParentInvoice(kimeno);items.add(itm);}kimeno.setTetelekLista(items);return kimeno;}Erre valami tipp, hogy lehetne generikusabbá tenni? Pl hogy a "kimeno" típusa mondjuk bemeneti paramétertől függjön (de ne kelljen végig instanceofolgatni az összes lehetséges bemeneti osztályt), és amúgy extends AbstractInvoiceEntity.
-
togvau
senior tag
JPA entity abstract ősosztályának miért nem lehet abstract metódus deklarációja?
-
togvau
senior tag
-
togvau
senior tag
Mi baja lehet?
SELECT new asd.dto.SzallitoiMegrendelesDTO(m.bizszam, AVG(tl.egysegAr), SUM(tl.mennyisegME1), SUM(tl.mennyisegME2), SUM(tl.mennyisegME3)) FROM Megrendeles m LEFT JOIN MegrendelesTetelek tl ON tl.parentInvoice=m WHERE tl.cikk... GROUP BY m.bizszamSumokat szépen megcsinálja. AVG viszont 0.0 a DTO-ban, ahol double típusnak volt megadva a field, mert ha bigdecimalra állítom adok meg sír, hogy nincs konstruktor double-val. DB-ben decimal típusúak amiket átlagolnia kéne, és ha a DB-n lefuttatom a queryt sima SQL-ben, jó az átlag is. Az entity-ben is bigdecimal, mégse engedi az. Fura, mert a SUM-ok azok bigdecimalok, és engedi a dto-ban is a bigdecimalt. AVG-nél nem.
-
togvau
senior tag
tehát nem lehet így. Ezt én is megtalátam.
Nem értem miért nem fejlesztik a JPQL-t is, vannak minden DB-ben működő, de JPQL-ben nem létező funkciók. Ez a találat limitálás tól-ig is ilyen. Van ahol "LIMIT" van ahol "TOP", de ugyan az az implementáció elintézné...Pár hónapja egyébként ilyen hibernate hackel raktam bele a GROUP_CONCAT-ot (amit szintén szinte minden DB tud, ez esetben a H2 is, csak JPQL-ben nem volt ilyen):
public class SqlFunctionsMetadataBuilderContributor implements MetadataBuilderContributor {@Overridepublic void contribute(MetadataBuilder metadataBuilder) {metadataBuilder.applySqlFunction("group_concat", new StandardSQLFunction("group_concat", StandardBasicTypes.STRING));}}
Aztán ment pl:...dto.Photolist(p.user.id, GROUP_CONCAT(p.id)) FROM Photo p WHERE p.user.id IN ?1...Lehet itt is kipróbálom... majd munkaidőben -
mobal
nagyúr
Új hozzászólás Aktív témák
-
11400 - 11301
12209 - 12201 12200 - 12101 12100 - 12001 12000 - 11901 11900 - 11801 11800 - 11701 11700 - 11601 11600 - 11501 11500 - 11401 11400 - 11301 11300 - 11201 11200 - 11101 11100 - 11001 11000 - 10901 10900 - 10801 10800 - 10701 10700 - 10601 10600 - 10501 10500 - 10401 10400 - 10301 10300 - 10201 10200 - 10101 10100 - 10001 10000 - 8001 8000 - 6001 6000 - 4001 4000 - 2001 2000 - 1
-
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ékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - 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! 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?:))
- Macska topik
- Megújult mobilos felület, fórumos ráncfelvarrás a PROHARDVER! lapcsaládon
- Meggyi001: Áram nélkül....méltóság nélkül.....
- Vicces képek
- Mibe tegyem a megtakarításaimat?
- Shield TV-t csinált a Shieldből az NVIDIA
- Yettel topik
- Saros (PS5)
- Samsung Galaxy Felhasználók OFF topicja
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- További aktív témák...
- Gigabyte H77M-D3H + Core I7 2600 + 4x4GB DDR3 RAM (Félkonfig)
- 1TB és 2TB 7.2k 3.5" SAS HDD-k, több darab, HDSentinel 100/100
- Asus Zenbook 14X OLED AMD Ryzen 9 5900HX 16 GB LPDDR4X 4266 MHz RAM 1 TB SSD
- Magyar ! DELL LATITUDE 7420 2-in-1 14"iPS TOUCH / i7-1165G7, 16GB/512GB NVMe / irisXE TB4 +SZLA GAR
- Samsung Galaxy S24+ Plus 12/256GB Újszerű,Kártyafüggetlen,Dobozos,Tartozékaival. 1 Év Garanciával!
- Keresünk iPhone 16/16e/16 Plus/16 Pro/16 Pro Max
- Oppo Reno A17 / 4/64GB / Kártyafüggetlen / 12Hó garancia
- ÚJRA! 256GB NVMe SSD, 1 év gar - 2230 méret
- Bomba ár! Dell Latitude E6420 - i5-2GEN I 8GB I 250GB I DVDRW I HDMI I 14" HD I Cam I W10 I Gari!
- iPhone 13 128Gb 100%(1év Garancia)- ÚJ EREDETI AKKUMULÁTOR - AKCIÓ
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest



