在Web.xml添加Listener
<listener>
<listener-class>com.zskx.pem.network.consult.web.ServerStartListener</listener-class>
</listener>
业务类
public class ServerStartListener implements ServletContextListener {
private ConsultantService consultantService;
private UserService userService;
@Override
public void contextInitialized(ServletContextEvent sce) {
ApplicationContext ac = null;
ac = WebApplicationContextUtils.getRequiredWebApplicationContext(sce
.getServletContext());
setUserService((UserService) ac.getBean("userService"));
setConsultantService((ConsultantService) ac
.getBean("consultantService"));
try {
getUserService().updateAllUserStatus(EnumConsultStatus.OFFLINE);
Thread.sleep(2000);
getConsultantService().updateAllConsultantStatus(
EnumConsultStatus.OFFLINE);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public void contextDestroyed(ServletContextEvent sce) {
// TODO Auto-generated method stub
}
public ConsultantService getConsultantService() {
return consultantService;
}
public void setConsultantService(ConsultantService consultantService) {
this.consultantService = consultantService;
}
public UserService getUserService() {
return userService;
}
public void setUserService(UserService userService) {
this.userService = userService;
}
分享到:
相关推荐
在Spring框架中,Bean的创建和初始化是IoC(Inversion of Control)容器的核心功能,这一过程涉及到多个步骤。以下是对Spring Bean创建初始化流程的详细解释: 1. **初始化ApplicationContext**: 开始时,通过`...
Spring框架中,获取所有拥有特定注解的Bean实例代码是非常重要的一个功能,特别是在系统参数初始化、获取系统中所有接口服务清单等一系列需要在Spring启动后初始化的功能中。本文主要介绍了Spring启动后获取所有...
在Spring框架中,Bean是核心概念,它是Spring管理的对象,通常代表了应用程序中的业务对象或服务。本示例将深入探讨如何在Spring中创建和管理Bean。首先,我们需要理解Spring的IoC(Inversion of Control,控制反转...
在 Java 应用中,我们可以创建一个主类来启动应用程序,并从 Spring 容器中获取 Bean 实例。例如: ```java public class MainApp { public static void main(String[] args) { ApplicationContext context = new...
在Spring-Demo中,我们可能会看到一个实际的例子,包括`beans.xml`配置文件,一个或多个Java类,以及如何通过Spring容器启动并管理这些Bean。这个Demo有助于理解Spring如何通过反射机制加载和管理Bean,以及如何通过...
在Spring Boot框架中,普通类调用bean是常见的操作,特别是在构建复杂应用时。这篇博客“17. Spring Boot普通类调用bean【从零开始学Spring Boot】”旨在指导初学者如何在非Spring管理的类中访问和使用Spring容器中...
当容器启动时,它会立即创建Singleton Bean的实例,并将其存储在容器中。这样,后续的任何请求都将使用这个已存在的实例,确保在整个应用程序中只有一个Bean实例。例如,在上面的例子中,我们创建了一个名为`...
2. **性能考虑**:在JSP页面中获取Spring的bean可能会引入不必要的性能开销,因此除非特别需要,否则尽量在后端处理逻辑。 3. **安全考虑**:直接暴露Spring容器中的bean,尤其是业务逻辑层的bean,可能会引入安全...
// 执行任务逻辑,利用myService进行业务处理 myService.executeTask(); } } ``` 然后,在Spring配置文件中,我们可以创建一个`JobDetail`来引用这个`MyJob`实例,并设置其名称和组名: ```xml <bean id=...
本文档中的示例通过外部Spring容器获取指定的实现Bean,并通过Axis2提供服务。这涉及到以下几个关键步骤: **1. 创建服务实现类:** - 开发者需要手动编写WSDL文件和服务实现类,而不是使用Axis2提供的工具(如...
本例中,我们将讨论如何配置Web服务以在启动时加载Servlet,并利用Spring框架来读取和处理数据库内容。 首先,让我们了解Servlet的生命周期。Servlet有三个主要阶段:初始化(init)、服务(service)和销毁...
Spring 运行时动态注册 Bean 的方法需要我们定义一个没有被 Spring 管理的控制器类,一个获取 Spring 上下文的工具类,以及在 SpringBoot 的启动类中保存当前 Spring 上下文。最后,我们可以在另一个被 Spring 管理...
为了运行这个示例,你需要设置一个Spring容器,加载配置,然后从容器中获取并使用bean。在实际操作中,你可以使用Spring Boot来快速启动一个Spring应用,它已经集成了Spring AOP和IOC的功能。 总结来说,Spring的...
4. **注入Spring Bean**:在RCP组件(如ViewPart或EditorPart)中,我们可以使用`@Autowired`注解或者通过ApplicationContext的getBean()方法获取Spring管理的bean,将其注入到RCP组件中。 5. **处理事件和命令**:...
Spring的高层容器视图展示了容器启动时如何读取应用提供的配置信息,生成bean配置注册表,然后实例化bean,并装配依赖关系,为应用提供运行环境。在Spring中,BeanFactory是基础框架接口,而ApplicationContext是...
### Spring在Tomcat容器中的启动过程详解 #### 一、Spring框架简介 Spring是一个开源的轻量级Java开发框架,其核心设计目标是为了简化企业级应用的开发。Spring提供了全面的基础架构支持,使得开发者可以专注于业务...
总结起来,`@ComponentScan`注解在Spring启动过程中起着至关重要的作用,它简化了Bean的配置,使得我们能够更加专注于业务代码。通过深入源码,我们可以更好地理解Spring如何管理和控制应用的生命周期,这对于Java...
当消费者启动时,Dubbo会从注册中心获取服务提供者的地址,动态创建代理对象,使得消费者可以直接调用服务接口方法。 4. **Zookeeper作为注册中心** Zookeeper是一个分布式协调服务,常被用作Dubbo的服务注册与...
随着版本的更新,Spring引入了新特性和改进,例如对注解的更好支持、对异步处理的改进、对RESTful Web服务的支持等。 2、什么是SpringFramework? Spring是一个开源的Java/Java EE全功能栈应用程序框架,旨在简化...
Spring支持异常翻译,将底层技术抛出的异常转换为业务层可处理的异常,还可以使用@ControllerAdvice和@ExceptionHandler进行全局异常处理。 17. **Spring如何集成MyBatis?** 通过配置MyBatis-Spring桥接库,可以...