Automatische Typkonvertierung in Spring

Status
Nicht offen für weitere Antworten.

deamon

Bekanntes Mitglied
Scheinbar ist es bei Spring üblich Beans, die man sich aus der BeanFactory holt, explizit in den gewünschten Typ umzuwandeln.

Beispiel:
Code:
Messenger messenger = (Messenger) ctx.getBean("messenger");

Warum ist das so? Warum erzeugt Spring nicht ein Objekt von dem Typ, der auch in der Bean-Konfiguration steht? Das ist doch eigentlich nur lästige Schreibarbeit, die man automatisieren könnte, oder?
 
G

Gelöschtes Mitglied 5909

Gast
falls du das casten meinst tippe ich mal darauf damit es mit java 1.4 kompatibel ist
 
S

SlaterB

Gast
wenn das Bean nicht vom Type Messenger wäre, dann könnte man es gar nicht auf Messenger casten,
dann gäbe es eine ClassCastException,

das Objekt ist also vom richtigen Typ, nur wird es über allgemeine Wege nur als Object übertragen, anders gehts in bestimmten Fällen nicht,
 
M

maki

Gast
>> Warum erzeugt Spring nicht ein Objekt von dem Typ, der auch in der Bean-Konfiguration steht?

Woher sollte getBean denn wissen, welchen Typ es zurückliefert?
Beachte das dies bereits zur Compilezeit von Context bekannt sein müsste ;)

Ist also eine Einschränkung von Java, an der Spring nicht vorbeikommt.
 
S

SlaterB

Gast
z.B. BeanFactory.getBean()

oder auch Hibernate: Session.load() // lädt ein Objekt aus der DB

oder HttpSession.getObject() oder wie das da heißt
oder ArrayList.get() wenn man es nicht generisch aufbaut

wann immer ein vorgegebes Objekt verschiedenartige Objekte enthält, kann der gemeinsame Nenner fast nur Object sein,
manchmal ähnlich banale Basisklassen wie Serializable, Comparable, AbstractHibernateObject, SpringBeanBaseClass usw.

Ausnahmen sind nur: generische Parameter
+ spezielle automatisch erzeugte Sonderklassen zum fraglichen Objekt, meist mit ähnlichen Namen,
z.B. 'MessageBeanFactory'
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G jBoss automatische Synchronisation? Application Tier 4
M Spring DM: Problem mit Tomcat als OSGI-Service Application Tier 1
G Spring/Hibernate exception Application Tier 17
S Spring: Klassen in anderer "Anmelden" Application Tier 16
RaoulDuke Spring - Bugfixes in 2.5.x Application Tier 4
G Spring rollbackFor Application Tier 8
MQue Spring Security Form Application Tier 3
D Spring konfigurieren mit XML, Annotionen oder Java? Application Tier 2
MQue Spring in Zukunft Application Tier 5
I Passwort verschlüsseln in DB mit Spring Application Tier 5
MQue Spring https Application Tier 7
I Security bei Spring? Application Tier 31
MQue Spring beans Application Tier 10
I Wieviel Projekte bei Spring? Webprojekt Application Tier 2
G Transaktionen Spring Application Tier 58
Y Spring und Hibernate Application Tier 2
K Spring DI existierendes Objekt übergeben Application Tier 2
G Spring applicationContext Application Tier 3
MQue Spring Autowired Application Tier 7
MQue Spring Proxys Application Tier 2
D Problem beim Testen von einer Spring-Anwendung Application Tier 8
MQue Spring BeanFactoryPostProcessor Application Tier 3
MQue Spring ApplicationContext Application Tier 20
S Spring util:list in eine andere importieren Application Tier 15
MQue Einsatz von Spring Application Tier 13
M Konfiguration WebApp/Spring Host-abhängig Application Tier 5
E Migration altes Framework (SOFIA) auf Spring Application Tier 3
D Spring und Hbernate konfigurieren bzw. verschalten Application Tier 5
A Spring: JSP nimmt style.css nicht an Application Tier 3
G Spring Security Frage fuer Fortgeschrittene Application Tier 2
Y Spring + MyFaces - Exception bei Serverstart Application Tier 1
Y Maven MyFaces Hibernate Spring - Projekt Application Tier 1
byte [Spring] Referenced Bean not found Application Tier 2
M Spring - Leichtgewichtiger als JBoss? Application Tier 4
D Spring: setter injection von statischer Methode? Application Tier 1
reibi Spring Beans - Grundsatzfrage Application Tier 3
thE_29 Spring und XFire Frage Application Tier 3
H spring Application Tier 2
R Spring und Hibernate3 - CGLib Enhancement failed Application Tier 2
S Spring 2.0 Tutorial gesucht Application Tier 2
M JBoss Seam - Spring Application Tier 11
G [Spring+JSF]: VariableResolver und Scopes? Application Tier 1

Ähnliche Java Themen

Neue Themen


Oben