`
afeitech
  • 浏览: 35014 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用Listener实现SessionFactory和DaoFactory的初始化

阅读更多

前面已经介绍了

采用单态模式保证Hibernate的SessionFactory的单态

用DAO工厂创建并管理dao实例

 

那么现在,我们用Listener实现在系统启动时,即完成SessionFactory实例的初始化,以及DaoFactory的初始化。

public class FactoryLoaderListener implements ServletContextListener {

	DaoFactory df=null;
	SessionFactory sf=null;
	
	//在系统启动时候加载
	public void contextInitialized(ServletContextEvent sce) {
		
		try{//初始化Hibernate的SessionFactory
			sf=SessionFactoryBuilder.instance().getSessionFactory();
			System.out.println("Hibernate的SessionFactory已经初始化..."+sf);
		}catch(Exception e){
			System.out.println("Hibernate的SessionFactory初始化失败..."+e);
		}
		
		try{//获取系统的DAO配置文件路径
			String path=sce.getServletContext().getRealPath("/WEB-INF/");
			df=DaoFactory.instance(path);//创建DAO工厂的实例
			System.out.println("DAO工厂已经被初始化..."+df);
		}catch(Exception e){
			System.out.println("DAO工厂初始化失败,出现异常..."+e);
		}

	}
	public void contextDestroyed(ServletContextEvent arg0) {
		 sf=null;
		 df=null;
	}
}

需要在web.xml增加配置

	<listener>
		<listener-class>
			com.afei.web.FactoryLoaderListener
		</listener-class>
	</listener>

 

分享到:
评论

相关推荐

    SpringBoot项目启动时实现调用一次初始化方法.docx

    除了使用注解和接口,你还可以在Spring Boot的主启动类中直接定义一个初始化方法。这种方法适用于一些简单的初始化逻辑,通常不推荐在主启动类中包含过多业务逻辑,因为它会使得启动类变得复杂。示例如下: ```...

    Listener、Filter、Servlet与Java Web项目初始化项目例子 源代码

    通常JavaWeb项目启动时我们需要... 下面代码是模拟初始化的一个示例,可以在控制台看到程序的输出,和Listener、Filter、Servlet的启动先后顺序,强烈建议跟我一样喜欢动手的Coder操作一下,废话不多说,直接上代码了。

    解决ORA-01033 ORACLE 正在初始化或关闭

    ### 解决ORA-01033:Oracle正在初始化或关闭 #### 背景与问题解析 在Oracle数据库管理中,遇到ORA-01033错误是较为常见的问题之一,该错误通常出现在数据库启动或关闭的过程中。ORA-01033错误的全称是“ORA-01033:...

    C#Winform使用TCPListener加多线程编程实现客户端服务器端聊天模式

    本文将深入探讨如何使用C#的Winform框架结合TCPListener和TCPClient,以及多线程技术,实现客户端与服务器端的聊天模式。此外,我们还将讨论如何通过委托来解决在非UI线程中操作控件时可能引发的异常。 首先,TCP...

    Unity 网络 之 TcpListener 实现简单的网络服务器和客户端通讯功能封装(可监听多个客户端).rar

    Unity 网络 之 TcpListener 实现简单的网络服务器和客户端通讯功能封装(可监听多个客户端) 在Unity中用 TcpClient、TcpListener 两个封装类和 NetworkStream 来实现一个简单的网络通讯 demo 实现原理 1、首先...

    详解SpringBoot程序启动时执行初始化代码

    SpringBoot程序启动时...我们可以使用ApplicationListener接口、CommandLineRunner接口和EnvironmentAware接口来实现初始化代码,并在SpringBootApplication中注册我们刚创建的类,以便在程序启动时执行初始化代码。

    C#,winform,Tcp通信源码 使用TcpListener和TcpClient 源码

    1. 初始化`TcpClient`实例,通常不指定任何参数,让系统自动选择本地终结点。 ```csharp var tcpClient = new TcpClient(); ``` 2. 连接到服务器,调用`TcpClient.Connect()`方法,传入服务器的IP地址和端口号。 ```...

    杂记(一):Listener、Filter和工具

    而ServletContextListener则是在应用启动和关闭时执行初始化和清理工作,如加载配置信息或注册全局对象。 Filter(过滤器)则是Java Web开发中的另一个核心组件,它允许我们在请求处理前后对数据进行拦截和修改。...

    listener我的listener listener我的listener

    例如,ServletContextListener可以监听Web应用的启动和停止,用来进行一些初始化或清理工作。HttpSessionListener可以监控用户的会话创建和销毁,帮助我们实现会话管理。此外,ServletRequestListener则可以监听HTTP...

    springboot初始化资源的几种方式源码

    在Spring Boot框架中,初始化资源的方法多样且灵活,这些方式使得开发者能够更加高效地管理和配置应用的启动过程。本文将详细解析Spring Boot中常见的几种资源初始化方式及其源码实现。 1. **`@PostConstruct` 注解...

    Filter和Listener

    3. **上下文监听**:监听应用上下文的启动和关闭,进行资源的初始化和清理。 4. **请求监听**:监控请求的开始和结束,收集请求统计信息。 ##### 实现方式: 实现Listener需要创建一个实现了相应的监听器接口(如`...

    Aynchronous TCPListener 异步 server和client学习

    1. 初始化`TCPListener`实例,指定监听的IP地址和端口号。 2. 使用`Start`方法启动监听服务。 3. 在异步`AcceptTcpClientAsync`方法的回调中处理新连接,通常会创建一个新的`NetworkStream`用于读写数据。 4. 使用...

    TcpListener 监听服务端

    1. **TcpListener 初始化**: 首先,我们需要实例化一个 TcpListener 对象,传入监听的 IP 地址和端口号。例如,`new TcpListener(IPAddress.Any, 8080)` 表示在任何可用的 IP 地址上的 8080 端口监听。`IPAddress....

    TcpListener异步通信

    首先,需要实例化TcpListener类,指定服务器的IP地址(通常为“localhost”或“127.0.0.1”)和端口号。例如: ```csharp TcpListener listener = new TcpListener(IPAddress.Any, 1234); ``` 2. **启动监听**...

    TcpListener 和TcpClient使用总结

    ### TcpListener 和 TcpClient 使用总结 #### 一、概述 在C#的.NET框架中,TCP...总之,通过合理地使用 **TcpListener** 和 **TcpClient** 类,可以在C#中轻松地实现TCP/IP通信,这对于开发网络应用程序至关重要。

    Struts2中实现web应用的初始化实例详解

    Struts2中实现web应用的初始化实例详解 在JavsSE中,main方法为应用提供了入口,而在Android中,我们可以使用Application对于整个应用的生命周期进行管理,那么在基于Struts2的JavaEE应用中,如何实现类似的功能呢。...

    基于Spring的listener和Task

    在Spring框架中,Listener和Task是两种非常关键的组件,它们在后端开发中起着至关重要的作用。本文将深入探讨这两个概念以及如何在...通过深入理解这两个概念,开发者可以更好地设计和实现高效率、可扩展的后端服务。

    servlet+filter+listener 详解

    Servlet 在初始化后即驻留内存中,因此每次作出请求时无需加载。 Servlet 接口与方法介绍: * javax.servlet 接口 : + ServletConfig :定义了在 Servlet 初始化的过程中由 Servlet 容器传递给 Servlet 的配置...

    tomcat 7 源码分析-4 server初始化背后getServer().init()

    6. 初始化Servlet、Filter和Listener:这些组件是Web应用的核心部分,它们的初始化确保了Web应用的正确功能。 7. 配置完成后,服务器进入就绪状态,等待接收客户端请求。 通过对Tomcat源码的深入理解和分析,...

    基于tcplistener和tcpclient的一对多通讯原型

    本知识点主要关注如何使用C#中的`TcpListener`和`TcpClient`类实现一对多的通讯原型,这将帮助初学者理解如何构建简单的网络通信系统。 首先,`TcpListener`是.NET Framework中用于监听TCP连接的类。它的工作原理是...

Global site tag (gtag.js) - Google Analytics