Trädvy Permalänk
Medlem
Plats
Örnsköldsvik
Registrerad
Jun 2008

Hur ska jag tolka Java Beans?

Jag har tittat igenom några filmer om Java Beans och gjort några exempel. Men jag vet inte hur jag ska tolka Java Beans som.
Därför ställer jag frågan till er om jag har rätt eller fel.

Så här tolkar jag Java Beans:
Med Java Beans så slipper jag initialisera fält och konstruktörer med javakod. Istället så använder jag .XML kod för att beskriva vilket fält som ska ha detta värde och vilken konstruktör som ska ha dessa argumenten.

På så sett så kan man enkelt strukturera fält, konstruktörer och kanske mer, grafiskt istället för javakod.

Har jag rätt eller har jag fel?

| CPU: MMX 200 MHz Intel Pentium I| GPU: Voodo2 3dfx 8 Mb| RAM: SDRAM 32 Mb 133 Mhz | PSU: 3V fläkt 2W | Chassi: HP Vectra VE 5| Skärm: HP Ergo 1024| HDD: Toshiba 2033 MB | OS: Windows 95 B | Mus: HP |

Trädvy Permalänk
Medlem
Plats
i din garderob
Registrerad
Sep 2007

Osäker på vad du menar med hur du ska "tolka Java Beans som". En Java Bean är en klass som implementerar Serializable, har tom konstruktor och getters/setters för alla fält. Det är inte mycket att tolka, det bara är så..

edit: Kan ju tillägga att tomma konstruktorer brukar anses dåliga (vilket de är). Moderna ramverk för dependency injection kan injicera konstruktorparametrar så det finns egentligen ingen anledning att skippa konstruktorn, såvida något annat inte tvingar en.

Bilanaloger är som Volvo — varenda svenne kör med dem

Trädvy Permalänk
Medlem
Plats
Örnsköldsvik
Registrerad
Jun 2008
Skrivet av Teknocide:

Osäker på vad du menar med hur du ska "tolka Java Beans som". En Java Bean är en klass som implementerar Serializable, har tom konstruktor och getters/setters för alla fält. Det är inte mycket att tolka, det bara är så..

Men i Spring ramverk så skriver man in massa text i Java Beans med Spring Context. Jag själv förstår inte.

| CPU: MMX 200 MHz Intel Pentium I| GPU: Voodo2 3dfx 8 Mb| RAM: SDRAM 32 Mb 133 Mhz | PSU: 3V fläkt 2W | Chassi: HP Vectra VE 5| Skärm: HP Ergo 1024| HDD: Toshiba 2033 MB | OS: Windows 95 B | Mus: HP |

Trädvy Permalänk
Medlem
Plats
i din garderob
Registrerad
Sep 2007
Skrivet av heretic16:

Men i Spring ramverk så skriver man in massa text i Java Beans med Spring Context. Jag själv förstår inte.

Jag använder inte Spring (eller Java för den delen, vanligtvis) men är rätt säker på att deras dependency injection-lösning har stöd för så kallad "constructor injection" sedan ett par år tillbaka.

Bilanaloger är som Volvo — varenda svenne kör med dem

Trädvy Permalänk
Medlem
Plats
gbg
Registrerad
Jun 2011

XML initialisering är inte sällsynt att se i samband med bean-klasser, men det är inte en del av bean standarden. Som @Teknocide säger så säger bean standarden bara att

En klass är en Bean om den:
1) implementerar Serializable, i.e. är ok för Java att konvertera till en byte-ström.
2) har en konstruktor som inte tar några argument, i.e. fält måste ofta initialiseras efter att konstruktorn körts.
3) bara har privata fält, och alla fält har getters/setters.

Jag misstänker dock att du är inne på lite fel spår. Java beans talas sällan om i dagsläget, speciellt utanför enterprise. Nuförtiden betraktas punkterna 1-3 ofta fristående från varandra för varje klass. Klasser med namn i stil med MonitorBean ses idag ofta som tecken på omodern/dålig kod.

A: Win10 - i5 2500 - RX 580 - 12G ram
B: Arch - 2 x Xeon X5770 - R9 280X - 32G ram

Trädvy Permalänk
Medlem
Plats
Örnsköldsvik
Registrerad
Jun 2008
Skrivet av Bryal:

XML initialisering är inte sällsynt att se i samband med bean-klasser, men det är inte en del av bean standarden. Som @Teknocide säger så säger bean standarden bara att

En klass är en Bean om den:
1) implementerar Serializable, i.e. är ok för Java att konvertera till en byte-ström.
2) har en konstruktor som inte tar några argument, i.e. fält måste ofta initialiseras efter att konstruktorn körts.
3) bara har privata fält, och alla fält har getters/setters.

Jag misstänker dock att du är inne på lite fel spår. Java beans talas sällan om i dagsläget, speciellt utanför enterprise. Nuförtiden betraktas punkterna 1-3 ofta fristående från varandra för varje klass. Klasser med namn i stil med MonitorBean ses idag ofta som tecken på omodern/dålig kod.

Det tror jag också. Jag har hållit på med "Bean Configuration" och där kunde man ställa in parametrar för fält och objekt för klasser helt grafiskt utan att ens behöva skriva javakod. Mycket användbart.

| CPU: MMX 200 MHz Intel Pentium I| GPU: Voodo2 3dfx 8 Mb| RAM: SDRAM 32 Mb 133 Mhz | PSU: 3V fläkt 2W | Chassi: HP Vectra VE 5| Skärm: HP Ergo 1024| HDD: Toshiba 2033 MB | OS: Windows 95 B | Mus: HP |

Trädvy Permalänk
Medlem
Plats
Örnsköldsvik
Registrerad
Jun 2008

Bör jag lära mig Spring Beans? Eller är det bara onödigt?

Skickades från m.sweclockers.com

| CPU: MMX 200 MHz Intel Pentium I| GPU: Voodo2 3dfx 8 Mb| RAM: SDRAM 32 Mb 133 Mhz | PSU: 3V fläkt 2W | Chassi: HP Vectra VE 5| Skärm: HP Ergo 1024| HDD: Toshiba 2033 MB | OS: Windows 95 B | Mus: HP |