- Fórumok
- Szoftverfejlesztés
- Java programozás
- (kiemelt téma)
-
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
-
F1rstK1nq
aktív tag
Megértem. Tényleg embere válogatja.

Egyébként Spring Boot olyan szépen autoconfigolja, hogy öröm belekezdeni.
Ránéztem, nem rossz dolog ez a Mustache sem.
Viszont, most ez az AngularJS 2 + Spring keltette fel az érdeklődésem, hogy megemlítettétek, biztos kipróbálom valami hobbiprojektben a közeljövőben.(#9158) Aethelstone: Nekem sincs jó véleményem Vaadin-ról, sőt nagyon megutáltam a projekt végére, pedig még a Vaadin Spring integrációt is használtuk. CustomLayout-tal még hagyján, de amit kigenerál magából néha enélkül, az vicc. Mindegy, egy Vaadin Certification-re jó volt a tudás, projekt után, de nem igazán tervezek rá visszatérni, ha nem muszáj.
-
F1rstK1nq
aktív tag
Én kedvencem Spring + Thymeleaf kombó, Bootstrap-vel fűszerezve.
Valaki próbálta? Ajánlom.
-
F1rstK1nq
aktív tag
Lehet én vagyok a maradi, de nem egyszerűbb/hatékonyabb így? mvnrepository, majd megkeresed és bemásolod a megfelelő dependency-t a pom-odba?

-
F1rstK1nq
aktív tag
Érdekes amit írsz, bizonyos szinten érhető is, de szerintem ez abszolút szubjektív. (még ha te nem is annak érzed)
SLF4J oldaláról: "We used to recommend that loggers members be declared as instance variables instead of static. After further analysis, we no longer recommend one approach over the other."
Ott van egy jó kis táblázat a pro/kontra érvekre, de ő sem akar kimondott állást foglalni, hogy osztály vagy példány változó legyen a logger.
Régebben erről már olvastam egy kisebb vélemény ütközést stackoverflow-n is.
Akkor engem meggyőzött a példányváltozós logger használat és úgy kötöttem ki végül itt, hogy kényelmes nekem a logger példány inject-álás prototype-ként.
-
F1rstK1nq
aktív tag
Nem tudom kinek mennyire új dolog ez, de leírom, mivel doksiban nem nagyon tűnt fel.
Spring 4.3-mal bejött az InjectionPoint class. CDI-ben már régebb óta van ilyen. Nekem ez abból az szempontból volt érdekes, hogy ennek a segítségével használtam CDI környezetben eddig a Loggereket. (inject-áltam, nekem ez így kényelmesebb volt, mint a standard megoldás)Íme spring oldalon a megvalósítás:
@Bean
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
public Logger logger(InjectionPoint injectionPoint){
return LoggerFactory.getLogger(injectionPoint.getMember().getDeclaringClass());
}(SL4FJ a facade)
Ezt ugye csak be kell szúrni a megfelelő osztályokba és kész:
@Autowired
private Logger logger;Mit gondoltok? Tetszik/nem tetszik?
Jobban szeretitek a hagyományos megoldást?private final Logger logger = LoggerFactory.getLogger(getClass().getName()); -
F1rstK1nq
aktív tag
-
F1rstK1nq
aktív tag
Én is ezt hittem sokáig, hogy elég a Hikari függőséget betenni a pom-ban, aztán kidebugoltam a közelmúltban és láttam, hogy így az alap tomcat-jdbc datasource-t szúrja be.
Szóval kell a
spring.datasource.type=com.zaxxer.hikari.HikariDataSource.
Majd checkold azért te is légyszí, ha lesz rá időd. 
-
F1rstK1nq
aktív tag
Nem tudom Karma, hogy csinálja, mert lehet máshogy is, de nekem ez tűnik a legegyszerűbbnek, én így szoktam.
A pom-ba berakod a dependency-t, verzió nem kell ugye, mert Spring Boot a parent, azt ő intézi.
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
</dependency>Majd az application.properties-be ezt a sort:
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
Mivel a default, a tomcat-jdbc datasource.Majd a megfelelő értékekből létrehozza a datasource-ot a Spring Boot.
pl.:spring.datasource.driver-class-name=org.hsqldb.jdbc.JDBCDriver
spring.datasource.url=jdbc:hsqldb:mem:test
spring.datasource.username=sa
spring.datasource.password= -
F1rstK1nq
aktív tag
A Head First Design Patterns könyvhöz még nem volt ugyan szerencsém, de nagyon dicsérik.
-
F1rstK1nq
aktív tag
Ha nem probléma az angol, akkor a legjobb könyv a témában, ami ad egy részletes leírást a nyelvről: Thinking in Java
Abszolút kezdőknek is ajánlott és mérföldekkel jobb, mint a magyar "társaik". -
F1rstK1nq
aktív tag
-
F1rstK1nq
aktív tag
Ez a klasszikus megoldás:
String fileName = "res01.res";
ClassLoader classLoader = getClass().getClassLoader();
URL resource = classLoader.getResource(fileName);
if (resource != null) {
File file = new File(resource.getFile());
try (BufferedReader br = new BufferedReader(new FileReader(file))) {
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}Viszont, ha érdekel más módszer is, itt még tudsz csemegézni Java8-as megoldások közül is. Viszont amit ezekben a megoldásokban nem látsz, hogy hogyan éred el a resources alatti fájlokat. Így:
ClassLoader classLoader = getClass().getClassLoader();
URL resource = classLoader.getResource(fileName); -
F1rstK1nq
aktív tag
Spring-re Spring in Action.
Nagyon jó könyv, szájbarágós, angolja sem vészes, ha attól félnél.
-
F1rstK1nq
aktív tag
Így van, én is erre szántam a "még legmagasabb értelmes interfészt megadni" részemet, de lehet a tiéd jobb megfogalmazás.

-
F1rstK1nq
aktív tag
Így megmarad az az előnyöd, hogy csak a Lista implementációját változtatod meg példányosításkor, a kód többi része változatlan marad. (Például ha úgy döntesz, ArrayList helyett LinkedList-et használsz később)
Clean Code szerint egyébként érdemes szinte minden esetben a referencia értéknek a még legmagasabb értelmes interfészt megadni.
-
F1rstK1nq
aktív tag
Természetesen meglehet és teljesen jó az a megoldás is, csak az hivatalosan nem típusbiztos és nem refactor barát.
(én idea zom az is megtudja amúgy
)@ ComponentScan(basePackages={"package1", "package2"})
Kinek mi? Én egyszerűbbnek tartom a marker interfacet.

Egy elméleti példával be is bizonyítom, hogy miért:
-van egy top level package-ed (hu.somebody.main)
-ez alatt lesz 3 package-ed ahol a component-ek leszek definialva:
(hu.somebody.main.package1, hu.somebody.main.package2, hu.somebody.main.package3)
-a marker interface-t beteszed a top level pakage-edbe:package hu.somebody.main;
public interface Application {}Ez az alap felállás. Akkor a 2 opció scannelésre:
@Configuration
@ComponentScan(basePackageClasses = Application.class)
class ApplicationConfig {}vagy
@Configuration
@ComponentScan(basePackages={"hu.somebody.main.package1", "hu.somebody.main.package2", "hu.somebody.main.package3"})
class ApplicationConfig {}Melyik tűnik egyszerűbbnek?

-
F1rstK1nq
aktív tag
Ez nem szar, így van kitalálva Springben. Amit megjelölsz @Component annotációval (vagy valamelyik stereotype-jával) az az osztályod lesz Component és működnek rajta a spring specifikus dolgok (pl: Autowired). Ez természetesen a Spring álltal ajánlott implicit mód (Implicit bean discovery and automatic wiring). Lehet expliciten is @Bean annotációval Javaconfig-ból, meg xml config-ból is, de most kicsit elkalandoztam.
Amit te keresel, erre van egy jó kis "best practice" Springben: Csinálj egy üres marker interface-t abba a csomagodba ahol scannelni szeretnél és akkor arra az interfacere hivatkozz a ComponentScan-nél.
pl.: @Configuration
@ComponentScan(basePackageClasses = Application.class)
class ApplicationConfig {}marker interface:
public interface Application {} -
F1rstK1nq
aktív tag
Ú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é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?:))
- EAFC 26
- Xbox tulajok OFF topicja
- Vezetékes FEJhallgatók
- EU: senki ne használjon Huawei és ZTE hálózati berendezéseket!
- Gumi és felni topik
- Kormányok / autós szimulátorok topikja
- Házimozi belépő szinten
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Mibe tegyem a megtakarításaimat?
- AliExpress tapasztalatok
- További aktív témák...
- GOPRO Hero 11 BLACK - 5.3k akciókamera +tartozékok
- Xiaomi Redmi Note 15T 12/256Gb ezüstszürke hibátlan
- Magyar! LENOVO 15.6" iPS 144Hz 300nits - RTX4060-8 / 24 / 512GB, i5-13450, WiFi6ax, GARANCIA 2027-05
- X1 Carbon Gen9 14" 4K+ IPS i7-1185G7 32GB 256GB NVMe ujjlolv IR kam gar
- Thinkpad X13 Gen4 13.3" FHD+ IPS i7-1365U 16GB 512GB NVMe magyar vbill gar
- Üzleti kategóriás laptopok, asztali számítógépek, alkatrészek,garanciával, ZoliLaptop.hu
- BESZÁMÍTÁS! Powercolor RED Devil RX 7900XTX 24GB videokártya garanciával hibátlan működéssel
- Honor 200 / 8/256GB / Kártyafüggetlen / 12Hó Garancia
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest




(én idea zom az is megtudja amúgy
