Java Tutorial/Spring/ApplicationContext
Содержание
ApplicationContext And BeanFactory PostProcessor
File: context.xml
<source lang="java">
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="w" class="java.lang.String"> </bean> <bean id="allBeansLister" class="AllBeansLister"/>
</beans></source>
ApplicationContext Aware
File: context.xml
<source lang="java">
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="contextAware" class="ContextAwareDemo"/>
</beans></source>
ApplicationContext component scan
File: context.xml
<source lang="java">
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"> <aop:aspectj-autoproxy /> <context:component-scan base-package="bean"> <context:include-filter type="annotation" expression="org.aspectj.lang.annotation.Aspect"/> </context:component-scan>
</beans></source>
Component Filter Assignable
File: context.xml
<source lang="java">
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <context:component-scan base-package="bean"> <context:include-filter type="annotation" expression="bean.Magic"/> <context:include-filter type="assignable" expression="bean.ruponentMarker"/> <context:include-filter type="aspectj" expression="* void bean.*Service*(..)"/> </context:component-scan>
</beans></source>
Filter By Annotation
File: context.xml
<source lang="java">
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <context:component-scan base-package="bean"> <context:include-filter type="annotation" expression="bean.Magic"/> <context:include-filter type="assignable" expression="bean.ruponentMarker"/> <context:include-filter type="aspectj" expression="* void bean.*Service*(..)"/> </context:component-scan>
</beans></source>
Implements ApplicationEvent Publisher Aware
File: context.xml
<source lang="java">
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="heartbeatTask" class="HeartbeatTask"/> <bean id="scheduledTask" class="org.springframework.scheduling.timer.ScheduledTimerTask"> <property name="timerTask"><ref local="heartbeatTask"/></property> <property name="period"><value>1000</value></property> </bean> <bean id="timerFactory" class="org.springframework.scheduling.timer.TimerFactoryBean"> <property name="scheduledTimerTasks"> <list> <ref local="scheduledTask"/> </list> </property> </bean> <bean id="heartbeatForwarder" class="HeartbeatForwarder"/>
</beans></source>
Implements ApplicationListener
File: context.xml
<source lang="java">
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="heartbeatTask" class="HeartbeatTask"/> <bean id="scheduledTask" class="org.springframework.scheduling.timer.ScheduledTimerTask"> <property name="timerTask"><ref local="heartbeatTask"/></property> <property name="period"><value>1000</value></property> </bean> <bean id="timerFactory" class="org.springframework.scheduling.timer.TimerFactoryBean"> <property name="scheduledTimerTasks"> <list> <ref local="scheduledTask"/> </list> </property> </bean> <bean id="heartbeatForwarder" class="HeartbeatForwarder"/>
</beans></source>
Search By Base Package
File: context.xml
<source lang="java">
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <context:component-scan base-package="bean"/>
</beans></source>