日期:2014-05-17  浏览次数:20817 次

求解,帮助看一下,原来的工程是不是搞错了?

我得到一项目工程源代码, 
整个导入myeclipse中是没有任何错误的, 在tomcat中,我又不知从何怎么输入URL。

没有办法。只有自已,重建一下这个项目。 各自部分开调试。 (废话说多了),现在到了hibernate这一步。出问题了!
==============看红色标记

package com.xp1204.DAO.orm;

//import java.io.Serializable;
import java.sql.Connection;

import org.hibernate.FlushMode;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.xp1204.DAO.BaseDAO;

public class BaseImp extends HibernateDaoSupport implements BaseDAO {
   /*
    表示覆盖,例如定义了一个接口Interface,在其中声明了一个方法
  public abstract void getName();  然后定义一个实现该接口的类
  Class,该类就必须实现该方法(写具体的执行动作)。
    通常便于我们的理解和认识,在方法前加上@override,也可以不加,
    记住,只是便于理解,你可能不是一个人,而是一个团队在战斗
    */

@Override
public void configure() {
Configuration configuration;
SessionFactory sessionFactory;
HibernateTemplate hibernateTemplate;

configuration = new Configuration();
configuration.configure();
sessionFactory = configuration.buildSessionFactory();
hibernateTemplate = new HibernateTemplate(sessionFactory);
setHibernateTemplate(hibernateTemplate);

/*HibernateTemplate 提供如下三个构造函数:
? HibernateTemplateO 。
? HibernateTemplate(org.hibernate.SessionFactory sessionFactory)。
? HibernateTemplate(org.hibernate.SessionFactory sessionFactory, boolean allowCreate) 。 

第一个构造函数:构造一个默认的HibernateTemplate 实例,因此,使用HibernateTemplate实例之前,还必须使用方法setSessionFactory(SessionFactory sessionFactory)来为HibernateTemplate 传入SessionFactory 的引用。
第二个构造函数:在构造时已经传入SessionFactory 引用。
第三个构造函数:其boolean 型参数表明,如果当前线程己经存在一个非事务性的Session ,是否直接返回此非事务性的Session 。
对于在Web 应用中,通常启动时自动加载ApplicationContext , SessionFactory 和DAD对象都处在Spring 上下文管理下。因此无须在代码中显式设置,可采用依赖注入解耦SessionFactory 和DAO.
        
                    */
}

@Deprecated
@Override
public Connection connection() {
return getSessionFactory().getCurrentSession().connection();

//return this.getSessionFactory().getCurrentSession; 是不是应改成这样子呀}


    //HibernateDaoSupport类中getSession()方法
@Override
public Session openSession() {
return getSession();
}

@Override
public void create(Object entity) {
Session session = getSession();
Transaction transaction = session.beginTransaction();
session.setFlushMode(FlushMode.COMMIT);
session.save(entity);
transaction.commit();
session.refresh(entity);
}

@Override
public void save(Object entity) {
Session session = getSession();
Transaction transaction = session.beginTransaction();
session.setFlushMode(FlushMode.AUTO);
session.save(entity);
transaction.commit();
//&n