Click here to watch on Youtube:
https://www.youtube.com/watch?v=iI76k19IQsg&list=UUhwKlOVR041tngjerWxVccw
Click the below Image to Enlarge:
pom.xml
Employee.java
ContextStartEventHandler.java
ContextStopEventHandler.java
applicationContext.xml
App.java
Output
Click the below link to download the code:
https://sites.google.com/site/ramj2eev2/java_basics/SpringDemo_Event%20Handling%20in%20Spring_Context_start_stop.zip?attredirects=0&d=1
Github Link:
https://github.com/ramram43210/javaee/tree/master/Spring_2018/SpringDemo_Event%20Handling%20in%20Spring_Context_start_stop
Bitbucket Link:
https://bitbucket.org/ramram43210/spring/src/02e04aa1b68a77d4f5a01ebf111e80370bd99ca8/Spring_2018/SpringDemo_Event%20Handling%20in%20Spring_Context_start_stop/?at=master
See also:
All JavaEE Videos Playlist 
All JavaEE Videos 
All JAVA EE Links 
Spring Tutorial 
Servlets Tutorial 
All Design Patterns Links 
JDBC Tutorial 
Java Collection Framework Tutorial 
JAVA Tutorial 
Kids Tutorial 
Cooking Tutorial 
https://www.youtube.com/watch?v=iI76k19IQsg&list=UUhwKlOVR041tngjerWxVccw
Click the below Image to Enlarge:
| Event handling in spring [ContextStartedEvent and ContextStoppedEvent] | Spring event handling | 
| Event handling in spring [ContextStartedEvent and ContextStoppedEvent] | Spring event handling | 
| Event handling in spring [ContextStartedEvent and ContextStoppedEvent] | Spring event handling | 
| Event handling in spring [ContextStartedEvent and ContextStoppedEvent] | Spring event handling | 
| Event handling in spring [ContextStartedEvent and ContextStoppedEvent] | Spring event handling | 
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0%20http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.ram.core</groupId>
<artifactId>SpringDemo</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>SpringDemo</name>
<url>http://maven.apache.org</url>
<properties>
<spring.version>5.0.2.RELEASE</spring.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- Spring 5 dependencies -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
</project>
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0%20http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.ram.core</groupId>
<artifactId>SpringDemo</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>SpringDemo</name>
<url>http://maven.apache.org</url>
<properties>
<spring.version>5.0.2.RELEASE</spring.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- Spring 5 dependencies -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
</project>
Employee.java
package com.ram.model;
/**
* Spring bean
*
*/
public class Employee
{
private String name;
public void setName(String name)
{
this.name = name;
}
public void employeeDetails()
{
System.out.println("Employee Name = " + name);
}
}
/**
* Spring bean
*
*/
public class Employee
{
private String name;
public void setName(String name)
{
this.name = name;
}
public void employeeDetails()
{
System.out.println("Employee Name = " + name);
}
}
ContextStartEventHandler.java
package com.ram.eventhandler;
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextStartedEvent;
public class ContextStartEventHandler implements ApplicationListener<ContextStartedEvent>
{
public void onApplicationEvent(ContextStartedEvent event)
{
System.out.println("ContextStartedEvent Received = "+ event);
}
}
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextStartedEvent;
public class ContextStartEventHandler implements ApplicationListener<ContextStartedEvent>
{
public void onApplicationEvent(ContextStartedEvent event)
{
System.out.println("ContextStartedEvent Received = "+ event);
}
}
ContextStopEventHandler.java
package com.ram.eventhandler;
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextStoppedEvent;
public class ContextStopEventHandler implements ApplicationListener<ContextStoppedEvent>
{
public void onApplicationEvent(ContextStoppedEvent event)
{
System.out.println("ContextStoppedEvent Received = "+event);
}
}
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextStoppedEvent;
public class ContextStopEventHandler implements ApplicationListener<ContextStoppedEvent>
{
public void onApplicationEvent(ContextStoppedEvent event)
{
System.out.println("ContextStoppedEvent Received = "+event);
}
}
applicationContext.xml
<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-4.3.xsd">
<bean id="employee" class="com.ram.model.Employee">
<property name="name" value="Peter" />
</bean>
<bean id="contextStartEventHandler" class="com.ram.eventhandler.ContextStartEventHandler" />
<bean id="contextStopEventHandler" class="com.ram.eventhandler.ContextStopEventHandler" />
</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-4.3.xsd">
<bean id="employee" class="com.ram.model.Employee">
<property name="name" value="Peter" />
</bean>
<bean id="contextStartEventHandler" class="com.ram.eventhandler.ContextStartEventHandler" />
<bean id="contextStopEventHandler" class="com.ram.eventhandler.ContextStopEventHandler" />
</beans>
App.java
package com.ram.core;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.ram.model.Employee;
public class App
{
public static void main(String[] args)
{
ConfigurableApplicationContext context = new ClassPathXmlApplicationContext(
"applicationContext.xml");
context.start();
System.out.println("---------------------------------------");
Employee employee = (Employee) context.getBean("employee");
System.out.println(
"Got employee object from the ApplicationContext(Spring Container)");
employee.employeeDetails();
System.out.println("---------------------------------------");
context.stop();
}
}
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.ram.model.Employee;
public class App
{
public static void main(String[] args)
{
ConfigurableApplicationContext context = new ClassPathXmlApplicationContext(
"applicationContext.xml");
context.start();
System.out.println("---------------------------------------");
Employee employee = (Employee) context.getBean("employee");
System.out.println(
"Got employee object from the ApplicationContext(Spring Container)");
employee.employeeDetails();
System.out.println("---------------------------------------");
context.stop();
}
}
Output
Aug 25, 2018 10:35:16 AM org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@610694f1: startup date [Sat Aug 25 10:35:16 IST 2018]; root of context hierarchy
Aug 25, 2018 10:35:16 AM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from class path resource [applicationContext.xml]
ContextStartedEvent Received = org.springframework.context.event.ContextStartedEvent[source=org.springframework.context.support.ClassPathXmlApplicationContext@610694f1: startup date [Sat Aug 25 10:35:16 IST 2018]; root of context hierarchy]
---------------------------------------
Got employee object from the ApplicationContext(Spring Container)
Employee Name = Peter
---------------------------------------
ContextStoppedEvent Received = org.springframework.context.event.ContextStoppedEvent[source=org.springframework.context.support.ClassPathXmlApplicationContext@610694f1: startup date [Sat Aug 25 10:35:16 IST 2018]; root of context hierarchy]
INFO: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@610694f1: startup date [Sat Aug 25 10:35:16 IST 2018]; root of context hierarchy
Aug 25, 2018 10:35:16 AM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from class path resource [applicationContext.xml]
ContextStartedEvent Received = org.springframework.context.event.ContextStartedEvent[source=org.springframework.context.support.ClassPathXmlApplicationContext@610694f1: startup date [Sat Aug 25 10:35:16 IST 2018]; root of context hierarchy]
---------------------------------------
Got employee object from the ApplicationContext(Spring Container)
Employee Name = Peter
---------------------------------------
ContextStoppedEvent Received = org.springframework.context.event.ContextStoppedEvent[source=org.springframework.context.support.ClassPathXmlApplicationContext@610694f1: startup date [Sat Aug 25 10:35:16 IST 2018]; root of context hierarchy]
Click the below link to download the code:
https://sites.google.com/site/ramj2eev2/java_basics/SpringDemo_Event%20Handling%20in%20Spring_Context_start_stop.zip?attredirects=0&d=1
Github Link:
https://github.com/ramram43210/javaee/tree/master/Spring_2018/SpringDemo_Event%20Handling%20in%20Spring_Context_start_stop
Bitbucket Link:
https://bitbucket.org/ramram43210/spring/src/02e04aa1b68a77d4f5a01ebf111e80370bd99ca8/Spring_2018/SpringDemo_Event%20Handling%20in%20Spring_Context_start_stop/?at=master
See also:

No comments:
Post a Comment