Sziasztok.
Spring Boot-ban lehet futás közben dinamikusan állítani a port-ot?
Vagy induláskor ha foglalt eggyel nagyobb port számot választani amin induljon?
Java programozás - Szoftverfejlesztés fórum
hozzászólások
hoopy
(újonc)
Futásidőben nem tudsz. Viszont induláskor tudsz neki beadni portszámot: itt
Illetve a propertiesben a server.port=0 egy random portot választ.
Kerülőmegoldásokkal biztos megoldható az is, hogy induláskor a TCP portot először ellenőrzöd és ha foglalt növeled és azt adod be neki a main függvényben. (TestSocketUtils-nak talán van egy ilyen from-to port scan metódusa)
Bár prod környezetben érdekes megközelítés nem statikus vagy teljesen random portot használni.
[ Szerkesztve ]
btraven
(őstag)
Android Studio erre miért nem jelez hibát?
class Nation
private final List<League> leagues = new ArrayList<>();
class League
private List<Integer> teamIds = new ArrayList<>();
Team promotedTeam = statActor.getAscendingTeam();
nation.getLeagues().get(downLeague).getTeamIds().remove(promotedTeam);
btraven
(őstag)
Ha rengeteg objektumot írok ki serializálva a tárolóra akkor jobb byte field-eket használni az osztályban használni mint int-et?
Elvileg negyede lesz a fájl mérete?
Ha kifejezetten méretre lősz és nem muszáj JDK only megoldást adni, akkor lehet jobban jársz, ha valamilyen cél library-t használsz. Némi összehasonlítás: [link] Főleg a 3.4 performance az érdekes.
Btw: Nagyban függ attól, hogy mi egyéb van még az osztályokban, ha csak egész számok, akkor hány darab, etc. De ha nagyon optimalizálni akarsz méretre, akkor lehet nem is magát a classt kéne szerializálni, mert az nyilván hoz magával mindenféle metadatát, ami tuti sokat fogyaszt.
btraven
(őstag)
Valaki kitalálja miért?
[link] libgdx Color
int x = 1 + 255;
Color color = new Color(x);
print(color);
= 0x00000100;
Hát én 0x000001FF -re számítottam.
new Color(0f, 0f, 1f/255f, 1f); - ez jó
Miért számítottál másra?
Decimális 256 az hexadecimális 0x100. Mitől kellett volna 0x1FF-nek lennie?
Ha 0x1FF-et akarsz, miért nem hexadecimálisan adod meg az x int értékét?
btraven
(őstag)
Köszönöm, ezt jól elnéztem.
int értékem van, és az alpha-t szerettem volna FF-re állítani mindegyikhez.
Akkor marad az r,g,b,a konstruktor.
dudikpal
(aktív tag)
Ezzel kérem le a html contentet:URL url = new URL(uri);
Eddig működött is (más oldalaknál továbbra is jó), de most 403-at dob pl erre:
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.addRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:25.0) Gecko/20100101 Firefox/25.0");
con.setReadTimeout(5000);
con.setConnectTimeout(5000);
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
String inputLine;
StringBuffer content = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
content.append(inputLine + "\n");
}
in.close();
con.disconnect();
https://www.cars-data.com/en/lincoln-continental-specs/59792/tech
Viszont postmanből sima get-tel jön a content, még http request-ből is (.http), de így kódból meg nem. Gondoltam rá lett dobva 1 nem vagyok robot captcha vagy vmi, de akkor request fileból meg postmanből sem kéne jönnie, nem?
Üdv, szerintetek az alábbi feladatot meg lehet oldani jobban, elegánsabban is?
A metódus kap egy egész számokból álló listát, meg kell számolni benn a növekvő sorozatokat. Pl (1, 2, 3, 1, 2, 3, 1) ebben van kettő.
Az én megoldásom:public int numberOfIncSeries(List<Integer> numbers) {
int count = 0;
boolean inc = false;
for (int i = 1; i < numbers.size(); i++) {
if (numbers.get(i - 1) <= numbers.get(i)) {
inc = true;
} else {
if (inc) {
inc = false;
count++;
}
}
}
count = inc ? count + 1 : count;
return count;
}
Sokkal szebb szerintem nincsen sajnos. Én picit gyakoroltam TDD-t rajta, nagyjából ez jött ki belőle:
[link]
ListSequenceFinder.findSeq a metódus, ListSequenceFinderTest tartalmazza a 18 Test case-et. Sajnos a formázást valamiért elcseszte csúnyán.
Ablakos
(őstag)
Van egy osztály (App) ami implementál két interfészt. Mindkét interfésznek van egy ugyanolyan nevű default metódusa.(default void doStuff(){})
Az osztályban hogyan tudom hívni a kívánt default metódust?
(new App().doStuff(); természetesen fordítási hibát ad)
[ Szerkesztve ]
Ha jól emlékszem:
PreferredInterface.super.doStuff()
Kötelező definiálni is az osztályban a doStuff metódust ilyenkor, es akkor menni fog, amit irtál.
[ Szerkesztve ]
Ablakos
(őstag)
Igen, tényleg az eclipse már editorban figyelmeztet, hogy override nélkül nem lesz jó.
Így már megy. super
Köszi
Ablakos
(őstag)
Egy tömb referencia változó kiíratása konzolra hasonló [I@85ede7b eredményt ad. Valamire (mire) használható ez a hieroglifa?
[ Szerkesztve ]
Nem vagyok még teljesen a téma szakértője, valaki biztos szebb választ is tud majd adni, de
Azt hiszem amit kiír az maga a memóriacím ahol a tömböd található, lévén a referencia típusú változók egy referenciát(hivatkozást) tárolnak el.
Az Arrays.toString(tombodValtozoNeve)) amivel megkapod emészthetőbben a tömb tartalmát, vagyis az Arrays osztály toString metódusával.
Ha nem így lenne javítsatok ki.