• 大小: 1.73MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-10-13
  • 语言: Java
  • 标签: 增删改查  

资源简介

使用Hibernate+Jsp+servlet完成一个简单的增删改查的简单用例

资源截图

代码片段和文件信息

package com.factory;

import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;

/**
 * Configures and provides access to Hibernate sessions tied to the
 * current thread of execution.  Follows the Thread Local Session
 * pattern see {@link http://hibernate.org/42.html }.
 */
public class HibernateSessionFactory {

    /** 
     * Location of hibernate.cfg.xml file.
     * Location should be on the classpath as Hibernate uses  
     * #resourceAsStream style lookup for its configuration file. 
     * The default classpath location of the hibernate config file is 
     * in the default package. Use #setConfigFile() to update 
     * the location of the configuration file for the current session.   
     */
private static final ThreadLocal threadLocal = new ThreadLocal();
    private static org.hibernate.SessionFactory sessionFactory;

    private static Configuration configuration = new Configuration();
    private static ServiceRegistry serviceRegistry; 

static {
     try {
configuration.configure();
serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
sessionFactory = configuration.buildSessionFactory(serviceRegistry);
} catch (Exception e) {
System.err.println(“%%%% Error Creating SessionFactory %%%%“);
e.printStackTrace();
}
    }
    private HibernateSessionFactory() {
    }

/**
     * Returns the ThreadLocal Session instance.  Lazy initialize
     * the SessionFactory if needed.
     *
     *  @return Session
     *  @throws HibernateException
     */
    public static Session getSession() throws HibernateException {
        Session session = (Session) threadLocal.get();

if (session == null || !session.isOpen()) {
if (sessionFactory == null) {
rebuildSessionFactory();
}
session = (sessionFactory != null) ? sessionFactory.openSession()
: null;
threadLocal.set(session);
}

        return session;
    }

/**
     *  Rebuild hibernate session factory
     *
     */
public static void rebuildSessionFactory() {
try {
configuration.configure();
serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
sessionFactory = configuration.buildSessionFactory(serviceRegistry);
} catch (Exception e) {
System.err.println(“%%%% Error Creating SessionFactory %%%%“);
e.printStackTrace();
}
}

/**
     *  Close the single hibernate session instance.
     *
     *  @throws HibernateException
     */
    public static void closeSession() throws HibernateException {
        Session session = (Session) threadLocal.get();
        threadLocal.set(null);

        if (session != null) {
            session.close();
        }
    }

/**
     *  return session factory
     *
     */
public stat

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-05-17 21:35  Lid\
     文件        1363  2017-05-16 09:53  Lid\.classpath
     文件         439  2017-05-15 22:59  Lid\.myhibernatedata
     文件        1328  2017-05-16 00:22  Lid\.project
     目录           0  2017-05-17 21:35  Lid\.settings\
     文件         522  2017-05-15 22:53  Lid\.settings\.jsdtscope
     文件         125  2017-05-16 08:22  Lid\.settings\com.genuitec.eclipse.migration.prefs
     文件         364  2017-05-15 22:53  Lid\.settings\org.eclipse.jdt.core.prefs
     文件         460  2017-05-15 22:53  Lid\.settings\org.eclipse.wst.common.component
     文件         396  2017-05-16 08:22  Lid\.settings\org.eclipse.wst.common.project.facet.core.xml
     文件          49  2017-05-15 22:53  Lid\.settings\org.eclipse.wst.jsdt.ui.superType.container
     文件           6  2017-05-15 22:53  Lid\.settings\org.eclipse.wst.jsdt.ui.superType.name
     目录           0  2017-05-17 21:35  Lid\WebRoot\
     目录           0  2017-05-17 21:35  Lid\WebRoot\meta-INF\
     文件          39  2017-05-17 21:35  Lid\WebRoot\meta-INF\MANIFEST.MF
     目录           0  2017-05-17 21:35  Lid\WebRoot\WEB-INF\
     目录           0  2017-05-17 21:35  Lid\WebRoot\WEB-INF\lib\
     文件       21128  2017-05-17 21:35  Lid\WebRoot\WEB-INF\lib\jstl-1.0.3.jar
     文件      414240  2017-05-17 21:35  Lid\WebRoot\WEB-INF\lib\jstl-1.2.jar
     文件      876733  2017-05-17 21:35  Lid\WebRoot\WEB-INF\lib\mysql-connector-java-5.1.29-bin.jar
     文件      517075  2017-05-17 21:35  Lid\WebRoot\WEB-INF\lib\standard-1.0.3.jar
     文件        2378  2017-05-17 21:35  Lid\WebRoot\WEB-INF\web.xml
     文件        2066  2017-05-17 22:07  Lid\WebRoot\book.jsp
     文件        1946  2017-05-17 22:07  Lid\WebRoot\common.jsp
     文件        2014  2017-05-17 22:07  Lid\WebRoot\delete.jsp
     目录           0  2017-05-17 21:35  Lid\WebRoot\images\
     文件       96859  2017-05-17 21:35  Lid\WebRoot\images\login01.jpg
     文件        1039  2017-05-17 22:07  Lid\WebRoot\login.jsp
     文件        2237  2017-05-17 22:07  Lid\WebRoot\select.jsp
     文件        2504  2017-05-17 22:07  Lid\WebRoot\update.jsp
     目录           0  2017-05-16 08:21  Lid\build\
............此处省略32个文件信息

评论

共有 条评论