知识大全 Struts中用PlugIn扩展Hibernate的例子

Posted 扩展

篇首语:没有伞的孩子必须学会努力奔跑。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Struts中用PlugIn扩展Hibernate的例子相关的知识,希望对你有一定的参考价值。

Struts中用PlugIn扩展Hibernate的例子  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  使用Struts的PlugIn技术把HibernateSessionFactory 过程如下      ( ) 创建HibernateSessionFactory java 代码如下   package zy pro td util;    import net sf hibernate HibernateException;  import net sf hibernate Session;  import net sf hibernate cfg Configuration;    /**  * Configures and provides access to Hibernate sessions tied to the  * current thread of execution  Follows the Thread Local Session  * pattern see @link   */  public class HibernateSessionFactory     /**  * Location of hibernate cfg xml file   * NOTICE: Location should be on the classpath as Hibernate uses  * #resourceAsStream style lookup for its configuration file That  * is place the config file in a Java package the default location  * is the default Java package <br><br>  * Examples: <br>  * <code>CONFIG_FILE_LOCATION = /nf xml   * CONFIG_FILE_LOCATION = //foo/bar/nf xml </code>  */  private static String CONFIG_FILE_LOCATION = /hibernate cfg xml ;    /** Holds a single instance of Session */  private final ThreadLocal threadLocal = new ThreadLocal();    /** The single instance of hibernate configuration */  private final Configuration cfg = new Configuration();    /** The single instance of hibernate SessionFactory */  private net sf hibernate SessionFactory sessionFactory;    /**  * Returns the ThreadLocal Session instance  Lazy initialize  * the <code>SessionFactory</code> if needed   *  * @return Session  * @throws HibernateException  */  public Session currentSession() throws HibernateException   Session session = (Session) threadLocal get();    if (session == null)   if (sessionFactory == null)   try   nfigure(CONFIG_FILE_LOCATION);  sessionFactory = cfg buildSessionFactory();    catch (Exception e)   System err println( %%%% Error Creating SessionFactory %%%% );  e printStackTrace();      session = sessionFactory openSession();  threadLocal set(session);      return session;      /**  * Close the single hibernate session instance   *  * @throws HibernateException  */  public void closeSession() throws HibernateException   Session session = (Session) threadLocal get();  threadLocal set(null);    if (session != null)   session close();        /**  * Default constructor   */  public HibernateSessionFactory()            ( ) 创建HibernatePlugIn java 代码如下   package zy pro td plugin;    /*  * Created on Oct   *  * To change the template for this generated file go to  * Window>Preferences>Java>Code Generation>Code and Comments  */  import javax servlet ServletException;    import apache struts action ActionServlet;  import apache struts action PlugIn;  import onfig 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());  //Unment next o 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;         ( ) 配置Struts config xml 如下   <?xml version= encoding= UTF ?>  <!DOCTYPE struts config PUBLIC //Apache Sofare Foundation//DTD Struts Configuration //EN config_ _ dtd >  <struts config>  <form beans>  <form bean name= userActionForm type= ntroller UserActionForm />  </form beans>  <action mappings>  <action name= userActionForm path= /act/log/login scope= request type= ntroller LoginAction />  </action mappings>  <plug in className= apache struts tiles TilesPlugin >  <set property property= definitions config value= /WEB INF/tiles defs xml />  </plug in>  <plug in className= apache struts validator ValidatorPlugIn >  <set property property= pathnames value= /WEB INF/validator rules xml /WEB INF/validation xml />  </plug in>  <plug in className= zy pro td plugin HibernatePlugin />  <plug in className= zy pro td plugin HibernateSessionFactoryPlugIn />  </struts config>    这一部分就是你的嵌入代码     ( )创建ActionForm 代码如下   package ntroller;    import apache struts action *;  import javax servlet *;    public class UserActionForm extends ActionForm   private String password;  private String username;  public String getPassword()   return password;    public void setPassword(String password)   this password = password;    public String getUsername()   return username;    public void setUsername(String username)   this username = username;    public ActionErrors validate(ActionMapping actionMapping HttpServletRequest ServletRequest)   /**@todo: finish this method this is just the skeleton */  return null;    public void reset(ActionMapping actionMapping HttpServletRequest ServletRequest)          ( )创建Action    package ntroller;    import apache struts action *;  import javax servlet *;  import javax naming Context;  import javax naming InitialContext;  import net sf hibernate SessionFactory;  import net sf hibernate cha138/Article/program/Java/ky/201311/28279

相关参考

知识大全 struts2 + spring + hibernate&

   struts释出已经很久了虽然自己现在作GUI开发不过有时间还是学习下web开发现在就将我使用myeclipse工具应用struts+spring+hibernat

知识大全 struts框架中使用tiles组件代码实例

   在你的struts配置文件strutsconfigxml中加入下面的配置      <plugin

知识大全 Struts2.x介绍 平台扩展性极强

Struts2.x介绍平台扩展性极强  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Struts

知识大全 通过三种方式对Struts框架进行扩展

通过三种方式对Struts框架进行扩展  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  简介   

知识大全 JAVA拦截器原理及Struts2扩展

JAVA拦截器原理及Struts2扩展  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  最近发现很

知识大全 Eclipse基础--plugin插件安装

Eclipse基础--plugin插件安装  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Ecl

知识大全 给IBuySpy构建一个PlugIn系统

给IBuySpy构建一个PlugIn系统  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Plug

知识大全 Maven插件之Maven-Enforcer-Plugin

Maven插件之Maven-Enforcer-Plugin  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一

知识大全 javascript跟随滚动效果插件代码(javascript Follow Plugin)

javascript跟随滚动效果插件代码(javascriptFollowPlugin)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发

知识大全 一个在程序中实现plugin机制的简单例子

  在JDK中提供了一个日志记录包javautillogging它可以对程序中的日志记录进行相当复杂的控制例如通过它可以指定日志的级别和日志的位置(控制台文件套接字内存缓冲区)也可以创建子记录器通过它