Spring启动后执行

方法一:

实现BeanPostProcessor接口:

[java] view plaincopy

  1. public class InstantiationTracingBeanPostProcessor implements BeanPostProcessor {
  2. public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
  3. return bean;
  4. }
  5. public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
  6. return bean;
  7. }
  8. }

在配置文件中添加:

[html] view plaincopy

  1. <bean class="processor.InstantiationTracingBeanPostProcessor"/>

方法二:

实现InitializingBean接口:

[java] view plaincopy

  1. public class SysInitBean implements InitializingBean, ServletContextAware {
  2. public void afterPropertiesSet() throws Exception {
  3. }
  4. @Override
  5. public void setServletContext(ServletContext servletContext) {
  6. }
  7. }

在配置文件中添加:

[html] view plaincopy

  1. <bean class="processor.SysInitBean"/>

方法三:

实现ServletContextListener:

[java] view plaincopy

  1. public class RedisInitListener implements ServletContextListener {
  2. @Override
  3. public void contextDestroyed(ServletContextEvent sce) {
  4. }
  5. @Override
  6. public void contextInitialized(ServletContextEvent sce) {
  7. //WebApplicationContext wa = WebApplicationContextUtils.getWebApplicationContext(sce.getServletContext());
  8. ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
  9. }
  10. }

在web.xml中添加listener:

[html] view plaincopy

    1. <listener>
    2. <listener-class>listener.RedisInitListener</listener-class>
    3. </listener>
时间: 2024-11-06 21:47:11

Spring启动后执行的相关文章

spring boot 配置启动后执行sql, 中文乱码

spring.datasource.schema指定启动后执行的sql文件位置. 我发现中文乱码,原因是没有指定执行sql script encoding: spring: datasource: url: "jdbc:h2:mem:test" username: "sa" password: "" schema: database/import.sql sql-script-encoding: utf-8 type: com.alibaba.d

hadoop 启动后执行wordcount解析(No such file or directory错误)

hadoop 启动后执行wordcount解析 第一个  hadoop fs -mkdir input 结果出现了错误No such file or directory 查资料,应该是 执行命令为:hadoop fs -mkdir /input 1.x是可以执行的,而2.x的执行命令为:hadoop fs -mkdir /

HttpURLConnection在main函数中和tomcat启动后执行的区别

当有一个HttpURLConnection请求类时, 在用main函数调用能狗返回值,但是tomcat启动后,程序调用又返回值为空,如下: 如上图,在不知道别人方法怎么处理的情况下,我门的参数应该完全模拟前端 试一下如下方式 给中文参数加上URLEncoder.

spring启动后立即执行方法

1.方法所属的类继承InitializingBean接口. 2.重写afterPropertiesSet()方法. afterPropertiesSet方法会在bean被初始化时执行. 当bean的作用域是单例时,afterPropertiesSet方法会随着spring容器的初始化而初始化. 当bean的作用域是原型prototype时,每注入一次bean,都是一个全新的bean,所以afterPropertiesSet方法会在每次注入时执行一次.

容器启动后执行和执行数据库脚本

1 package com.jt.mongo.demo.modules.init; 2 3 import org.slf4j.Logger; 4 import org.slf4j.LoggerFactory; 5 import org.springframework.context.ApplicationListener; 6 import org.springframework.context.event.ContextRefreshedEvent; 7 import org.springfr

SAP Netweaver和Hybris Commerce启动后执行的默认操作

Netweaver里设置user 成功logon之后应该执行的tcode 在Hybris里,因为成都team本地开发用的是tomcat: embeddedserver:extension provides an API to run an embedded servlet container tomcatembeddedserver:extension provides a Tomcat-based implementation of this API. 因此,为什么Hybris launch之

Spring启动后扫描解析注解的过程

对应的类: ComponentScanBeanDefinitionParser.parse() ClassPathBeanDefinitionScanner.doScan() 参考 http://blog.csdn.net/xieyuooo/article/details/9089441

java web启动后执行初始化任务

写一个类继承ApplicationListener,可以直接引用下述代码,然后调用相应的方法. package com.linewell.system; import com.linewell.cache.ApplicationData; import org.springframework.context.ApplicationListener; import org.springframework.context.event.ContextRefreshedEvent; import org

Spring容器启动后注入service到Servlet并自动执行

通常做法是定义一个Servlet,并在web.xml中配置Servlet的启动顺序<load-on-startup>的值在DispatcherServlet之后.但这样做的缺点是在Servlet中无法使用Spring的依赖注入功能,只能使用WebApplicationContext的getBean()方法获取bean. 找到的解决办法如下: 1.自定义一个用于代理启动Servlet的类DelegatingServletProxy: package cn.edu.swu.oa.common.ut