SpringCloud系列(一)云原生应用
一、Bootstrap上下文
【SpringCloud系列(一)云原生应用】
文章图片
代码说明
import org.springframework.context.ApplicationEvent;
import org.springframework.context.ApplicationListener;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
/**
* Spring 事件/监听器 Demo
*
* @创建人 steffens
* @创建时间 2019/6/24
* @描述 文件创建
*/
public class SpringEventListenerDemo {
public static void main(String[] args) {
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext();
//增加监听器
context.addApplicationListener( new MyApplicationListener() );
//上下文启动
context.refresh();
//发布事件
context.publishEvent( new MyApplicationEvent( "Hello World1~~"));
context.publishEvent( new MyApplicationEvent( "Hello World2~~"));
context.publishEvent( new MyApplicationEvent( "Hello World3~~"));
}private static class MyApplicationListener implements ApplicationListener{
@Override
public void onApplicationEvent(MyApplicationEvent event) {
System.out.printf("MyApplicationListener receive, event : %s \n", event.getSource());
}
}
private static class MyApplicationEvent extends ApplicationEvent {/**
* Create a new ApplicationEvent.
*
* @param source the object on which the event initially occurred (never {@code null})
*/
public MyApplicationEvent(Object source) {
super(source);
}
}
}
二、 应用启动SpringApplication.run
例如args和程序参数
文章图片
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringCloudLesson1Application { public static void main(String[] args) {
SpringApplication.run(SpringCloudLesson1Application.class, args);
}}
三、修改成非web程序,注意启动注解 ( AnnotationConfigApplicationContext )
文章图片
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringCloudLesson1Application { public static void main(String[] args) {
//SpringApplication.run(SpringCloudLesson1Application.class, args);
//方式二
SpringApplication springApplication = new SpringApplication(SpringCloudLesson1Application.class);
//修改成非web程序
springApplication.setWebEnvironment(false);
springApplication.run(args);
}}
文章图片
推荐阅读
- Springcloud|(九)SpringCloud系列——分布式事务seata整合实战
- 一步一步搭建Svn服务之TortoiseSVN基本操作
- Alibaba微服务技术系列「Dubbo3.0技术专题」总体技术体系介绍及技术指南(序章)
- 一步一步搭建Svn服务之TortoiseSVN日常操作
- 千亿级模型在离线一致性保障方案详解
- 你想学的黑客(攻击)技术全在这了,一篇打包带走!
- SpringCloud技术专题「Feign」从源码层面让你认识Feign工作流程和运作机制
- 靶机DC-1
- 使用一些技巧来优化你的jQuery代码
- #导入MD文档图片#信息收集这一篇就够了