您所在的位置: 首页>>开发>>JAVA>>

在Struts中使用PlugIn扩展Hibernate(2)

(2)创建HibernatePlugIn.java,代码如下:

package zy.pro.td.plugin;
/*
* Created on Oct 4, 2004
*
* To change the template for this generated file go to
* Window>Preferences>Java>Code Generation>Code and Comments
*/
import javax.servlet.ServletException;
import org.apache.struts.action.ActionServlet;
import org.apache.struts.action.PlugIn;
import org.apache.struts.config.ModuleConfig;
import javax.naming.Context;
import javax.naming.InitialContext;
import zy.pro.td.util.HibernateSessionFactory;
/**
* @author sunil
*
*This class will initialize hibernate and bind SessionFactory in JNDI at the
*time of application and startup and unbind it from JNDI at the time of application
* shutdown
*/
public class HibernatePlugin
implements PlugIn {
private static final String jndi_hibernate = "jndi_hibernate_factory";
private  HibernateSessionFactory hsf;
private String name;
public HibernatePlugin() {
hsf=new HibernateSessionFactory();
}
// This method will be called at the time of application shutdown
public void destroy() {
System.out.println("Entering HibernatePlugIn.destroy()");
//Put hibernate cleanup code here
System.out.println("Exiting HibernatePlugIn.destroy()");
}
//This method will be called at the time of application startup
public void init(ActionServlet actionServlet, ModuleConfig config) throws
ServletException {
System.out.println("Entering HibernatePlugIn.init()");
System.out.println("Value of init parameter " + getName());
//Uncomment next two lines if you want to throw UnavailableException from your servlet
//if(true)
//throw new ServletException("Error configuring HibernatePlugIn");
System.out.println("Exiting HibernatePlugIn.init()");
bindFactoryToJNDI();
}
private void bindFactoryToJNDI() {
try {
Context ctx = new InitialContext();
ctx.bind(this.jndi_hibernate,hsf);
System.out.println("bindind the hibernate factory to JNDI successfully");
}
catch (Exception e) {
e.printStackTrace();
}
}
public String getName() {
return name;
}
public void setName(String string) {
name = string;
}
}


共3页: 上一页 [1] 2 [3] 下一页
【内容导航】
Java实用开发全集
Java类的基础教程专题
Java发展动态专题
Struts框架应用专题
Hibernate开源框架学习
 
 验证码: (点击刷新验证码)   匿名发表
  • Visual C++ 完全自学宝典

  • 作者:强锋科技,朱洪波
  • Visual C++ 6.0是微软公司为程序人员提供的Visual Studio 6.0工具套件中的重要组成部分。本书由浅入深地介绍使用Visual C++ 6.0..
Copyright©2005-2008 51CTO.COM 版权所有