Top Banner
Day 23
27

Java Course Day 23

Dec 13, 2014

Download

Education

Oleg Yushchenko

 
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Java Course Day 23

Day 23

Page 2: Java Course Day 23

Spring?

Page 3: Java Course Day 23

Container

Page 4: Java Course Day 23

Container

DI

Page 5: Java Course Day 23

Container

DIAOP

Page 6: Java Course Day 23

Container

DIAOP

Framework

Page 7: Java Course Day 23

Container

DIAOP

Framework

Lightweight

Page 8: Java Course Day 23
Page 9: Java Course Day 23

Bean Configuration

Page 10: Java Course Day 23

<bean id="employee" class="com.all4rest.domain.Employee" />

Page 11: Java Course Day 23

<bean id="employee" class="com.all4rest.domain.Employee" > <constructor-arg name="name" value="oleg" /> <constructor-arg name="salary" value="200.00" /></bean>

Page 12: Java Course Day 23

<bean id="employee" class="com.all4rest.domain.Employee" > <property name="name" value="oleg" /></bean>

Page 13: Java Course Day 23

<bean id="salonService" class="com.all4rest.domain.SalonService" > <property name="name" value="haircut" /></bean>

<bean id="employee" class="com.all4rest.domain.Employee" > <property name="salonService" ref="salonService" /></bean>

Page 14: Java Course Day 23

<bean id="employee" class="com.all4rest.domain.Employee" > <property name="salonService" > <bean class="com.all4rest.domain.SalonService" /> </property></bean>

Page 15: Java Course Day 23

<bean id="service.haircut" class="com.all4rest.domain.SalonService" > <property name="name" value="haircut" /></bean>

<bean id="service.manicure" class="com.all4rest.domain.SalonService" > <property name="name" value="manicure" /></bean>

<bean id="employee" class="com.all4rest.domain.Employee" > <property name="salonServices" > <list> <ref bean="service.haircut" /> <ref bean="service.manicure" /> </list> </property></bean>

<list>, <set>, <map>, <props>

Page 16: Java Course Day 23

<bean id="employee" class="com.all4rest.domain.Employee" > <property name="name" ><null /></property></bean>

Page 17: Java Course Day 23

Autowiring(byName, byType, constructor, auto-detect)

Page 18: Java Course Day 23
Page 19: Java Course Day 23
Page 20: Java Course Day 23

<bean id="employee" class="com.all4rest.domain.Employee“ scope="prototype" /> singleton request session web

Bean scoping

Page 21: Java Course Day 23

<bean id="employee" class="com.all4rest.domain.Employee“ factory-bean="employeeFactory“ factory-method="createEmployee" />

Factories

Page 22: Java Course Day 23

<bean id="employee" class="com.all4rest.domain.Employee“ init-method="employeeInit“ destroy-method="employeeDestroy" />

Initialization/Destruction methods

Page 23: Java Course Day 23

<bean id="abstractEmployee" class="com.all4rest.domain.AbstractEmployee“ abstract="true"/>

<bean id="employee" class="com.all4rest.domain.Employee“ parent="abstractEmployee" />

Parent/child beans

Page 24: Java Course Day 23

<bean id="contextRefreshListener“ class="com.all4rest.ContextRefreshListener" />

public class ContextRefreshListener implements ApplicationListener {

public void onApplicationEvent(ApplicationEvent event) { if (event instanceof ContextRefreshedEvent) { // do my staff } }}

Handling Application Events

Page 25: Java Course Day 23

BeanNameAware

ApplicationContextAware

Page 26: Java Course Day 23

AOP(aspect, advice, pointcut)

Page 27: Java Course Day 23