1、实现ServletContextAware接口并重写其setServletContext方法
@Component
public classTestStartedimplementsServletContextAware{
/**
* 在填充普通bean属性之后但在初始化之前调用
* 类似于initializingbean的afterpropertiesset或自定义init方法的回调
*
*/
@Override
publicvoidsetServletContext(ServletContext servletContext){
System.out.println("setServletContext方法");
}
}
注意:该方法会在填充完普通Bean的属性,但是还没有进行Bean的初始化之前执行
2、实现ServletContextListener接口
/**java项目www.fhadmin.org
* 在初始化Web应用程序中的任何过滤器或servlet之前,将通知所有servletContextListener上下文初始化。
*/
@Override
publicvoidcontextInitialized(ServletContextEvent sce) {
//ServletContext servletContext = sce.getServletContext();
System.out.println("执行contextInitialized方法");
}
3、将要执行的方法所在的类交个spring容器扫描(@Component),并且在要执行的方法上添加@PostConstruct注解或者静态代码块执行
//java项目www.fhadmin.org
@Component
public classTest2{
//静态代码块会在依赖注入后自动执行,并优先执行
static{
System.out.println("---static--");
}
/**
* @Postcontruct’在依赖注入完成后自动调用
*/
@PostConstruct
publicstaticvoidhaha(){
System.out.println("@Postcontruct’在依赖注入完成后自动调用");
}
}
4、实现ApplicationRunner接口
/**java项目www.fhadmin.org
* 用于指示bean包含在SpringApplication中时应运行的接口。可以定义多个applicationrunner bean
* 在同一应用程序上下文中,可以使用有序接口或@order注释对其进行排序。
*/
@Override
publicvoidrun(ApplicationArguments args) throws Exception{
System.out.println("ApplicationRunner的run方法");
}
5、实现CommandLineRunner接口
/**
* 用于指示bean包含在SpringApplication中时应运行的接口。可以在同一应用程序上下文中定义多个commandlinerunner bean,并且可以使用有序接口或@order注释对其进行排序。
* 如果需要访问applicationArguments而不是原始字符串数组,请考虑使用applicationrunner。
* java项目www.fhadmin.org
*/
@Override
publicvoidrun(String... ) throws Exception{
System.out.println("CommandLineRunner的run方法");
}
相关推荐
【标签】"开源GIS"提示我们,这里讨论的是一个开放源代码的地理信息系统解决方案。开源GIS提供了与商业GIS软件相媲美的功能,并且具有可定制性、灵活性和成本效益高的优势。在Spring Boot和PostGIS的结合中,开发者...
自研工作流引擎意味着项目团队已经根据实际需求设计并实现了自己的流程管理解决方案,这可能包含了流程设计、任务调度、状态跟踪和权限控制等多个方面。 文件名"code"表明压缩包内包含的是源代码,这可能涵盖Spring...
总的来说,结合Vert.x和Spring Boot开发MQTT服务,可以充分利用两者的优势,构建出高效、可扩展的物联网解决方案。通过理解这些核心概念和技术点,你将能够成功地搭建并维护一个实用的MQTT服务器。
Beetl提供了一种简洁的模板语法,易于学习和使用,而且执行效率高。Beetl的特性包括:支持自定义函数和宏,可以很容易地扩展其功能;支持条件、循环等逻辑控制;拥有强大的字符串处理和正则表达式功能等。本文介绍的...
【图书管理系统】是一种常见的信息化解决方案,它主要用于存储、管理和检索图书馆内的各类图书信息。在这个项目中,前端采用了Vue.js框架,而后端则是基于SpringBoot框架。Vue.js是现代JavaScript前端框架,而...
总之,这个基于SpringBoot的IT技术交流和分享平台融合了多种现代Web开发技术,提供了一个完整的从前端到后端的解决方案。无论是对初学者还是有经验的开发者,都能从中学习到很多实用的技术和最佳实践。
**SpringBoot2简介** SpringBoot是由Pivotal团队提供的全新框架,其设计目标是用来简化Spring应用的初始搭建以及开发过程。...在实际开发中,可以根据具体需求灵活选择和配置,以实现最佳的解决方案。
Layui是一个轻量级、模块化的前端UI解决方案,它提供了丰富的组件,如表格、表单、按钮、图标等,帮助快速构建美观的用户界面。在这个系统中,Layui被用于展示数据,提供用户交互界面,如创建表单、查看数据图表等...
Neo4j是一个基于Java语言的图形数据库,它在全球范围内被誉为领先的图形数据库解决方案。它提供了高性能的图形存储,并具备成熟和强大的数据库功能,如Cypher查询语言和ACID事务。相比于传统的关系型数据库,Neo4j在...
SpringBoot与Neo4j的整合是现代Web应用中常见的数据存储解决方案,特别是在处理复杂网络结构数据时。Neo4j是一个高性能的图形数据库,它利用图形数据模型来存储和查询关系数据,非常适合处理具有多对多关系的数据...
作为一个开源解决方案,MySQL拥有一个活跃的社区,不断为其发展和改进做出贡献。它的多线程功能允许同时处理多个查询,而其优化器则可以高效地执行复杂的查询操作。 随着互联网和Web应用的快速发展,MySQL已成为许多...
作为一个开源解决方案,MySQL拥有一个活跃的社区,不断为其发展和改进做出贡献。它的多线程功能允许同时处理多个查询,而其优化器则可以高效地执行复杂的查询操作。 随着互联网和Web应用的快速发展,MySQL已成为许多...
Spring Boot结合Redis和Lua提供了一套高效、可靠的解决方案,用于构建现代化的应用程序。通过利用Redis的高性能存储和Lua的脚本执行能力,开发者可以简化复杂业务逻辑,提高应用程序的响应速度和稳定性。这样的组合...
作为一个开源解决方案,MySQL拥有一个活跃的社区,不断为其发展和改进做出贡献。它的多线程功能允许同时处理多个查询,而其优化器则可以高效地执行复杂的查询操作。 随着互联网和Web应用的快速发展,MySQL已成为许多...
作为一个开源解决方案,MySQL拥有一个活跃的社区,不断为其发展和改进做出贡献。它的多线程功能允许同时处理多个查询,而其优化器则可以高效地执行复杂的查询操作。 随着互联网和Web应用的快速发展,MySQL已成为许多...
作为一个开源解决方案,MySQL拥有一个活跃的社区,不断为其发展和改进做出贡献。它的多线程功能允许同时处理多个查询,而其优化器则可以高效地执行复杂的查询操作。 随着互联网和Web应用的快速发展,MySQL已成为许多...
作为一个开源解决方案,MySQL拥有一个活跃的社区,不断为其发展和改进做出贡献。它的多线程功能允许同时处理多个查询,而其优化器则可以高效地执行复杂的查询操作。 随着互联网和Web应用的快速发展,MySQL已成为许多...
作为一个开源解决方案,MySQL拥有一个活跃的社区,不断为其发展和改进做出贡献。它的多线程功能允许同时处理多个查询,而其优化器则可以高效地执行复杂的查询操作。 随着互联网和Web应用的快速发展,MySQL已成为许多...
作为一个开源解决方案,MySQL拥有一个活跃的社区,不断为其发展和改进做出贡献。它的多线程功能允许同时处理多个查询,而其优化器则可以高效地执行复杂的查询操作。 随着互联网和Web应用的快速发展,MySQL已成为许多...
作为一个开源解决方案,MySQL拥有一个活跃的社区,不断为其发展和改进做出贡献。它的多线程功能允许同时处理多个查询,而其优化器则可以高效地执行复杂的查询操作。 随着互联网和Web应用的快速发展,MySQL已成为许多...