使用myeclipse 应用struts2 + spring + hibernate 实现CRUD

  struts2释出已经很久了,虽然自己现在作GUI开发,不过有时间还是学习下web开发,现在就将我使用myeclipse工具应用struts2 + spring + hibernate 实现CRUD操作的步骤一一纪录下来,为初学者少走弯路略尽绵薄之力!
       首先,myeclipse中web工程目录结构如下图:


       使用myeclipse开发hibernate和spring的操作我就不详细说了,网上的教程很多,如果有不明白的可以咨询我,呵呵.
      其中持久类AbstractTest,Test,TestDAO,Test.hbm.xml都是myeclipse的hibernate工具生成的.TestAction类是struts2的核心处理类,代码如下:
package  com.yangqiang.strutsdemo.web;

import  java.util.Collection;
import  java.util.List;

import  org.apache.log4j.Logger;

import  com.opensymphony.xwork2.ActionSupport;
import  com.yangqiang.strutsdemo.domain.Test;
import  com.yangqiang.strutsdemo.domain.TestDAO;

/** */ /**
 * 描述:
 * 
@author Stone yang  创建日期:2007-4-24 
 * 
@version pattern Study
 * 技术支持: <a href="
http://blog.csdn.net/yq76034150">http://blog.csdn.net/yq76034150</a>
 
*/

public   class  TestAction  extends  ActionSupport  ... {
    
private static final Logger log = Logger.getLogger(TestAction.class);

    
private Integer id;
    
private Integer[] ids;
    
protected TestDAO testDao;
    
private Test test;
    
private Collection<Test> testColl;
    
    
/** *//**
     * 描述 return 返回 ids。
     * 
@author Stone yang
     * @date 2007-4-24
     
*/

    
public Integer[] getIds() ...{
        
return ids;
    }

    
/** *//**
     * 描述:设置ids的值。
     * 
@param ids
     * 
@author Stone yang
     * @date 2007-4-24
     
*/

    
public void setIds(Integer[] ids) ...{
        
this.ids = ids;
    }

    
/** *//**
     * 描述 return 返回 testColl。
     * 
@author Stone yang
     * @date 2007-4-24
     
*/

    
public Collection<Test> getTestColl() ...{
        
return testColl;
    }

    
/** *//**
     * 描述:设置testColl的值。
     * 
@param testColl
     * 
@author Stone yang
     * @date 2007-4-24
     
*/

    
public void setTestColl(Collection<Test> testColl) ...{
        
this.testColl = testColl;
    }

    
/** *//**
     * 描述 return 返回 id。
     * 
@author Stone yang
     * @date 2007-4-24
     
*/

    
public Integer getId() ...{
        
return id;
    }

    
/** *//**
     * 描述:设置id的值。
     * 
@param id
     * 
@author Stone yang
     * @date 2007-4-24
     
*/

    
public void setId(Integer id) ...{
        
this.id = id;
    }

    
/** *//**
     * 描述 return 返回 testDao。
     * 
@author Stone yang
     * @date 2007-4-24
     
*/

    
public TestDAO getTestDao() ...{
        
return testDao;
    }

    
/** *//**
     * 描述:设置testDao的值。
     * 
@param testDao
     * 
@author Stone yang
     * @date 2007-4-24
     
*/

    
public void setTestDao(TestDAO testDao) ...{
        
this.testDao = testDao;
    }

    
/** *//**
     * 描述 return 返回 test。
     * 
@author Stone yang
     * @date 2007-4-24
     
*/

    
public Test getTest() ...{
        
return test;
    }

    
/** *//**
     * 描述:设置test的值。
     * 
@param test
     * 
@author Stone yang
     * @date 2007-4-24
     
*/

    
public void setTest(Test test) ...{
        
this.test = test;
    }

    
    
public String load() ...{
        test 
= getTestDao().findById(id);
           
return SUCCESS;
       }


       @SuppressWarnings(
"unchecked")
    
public String list() ...{
           testColl 
= getTestDao().findByExample(new Test());
           
return SUCCESS;
       }

           
       
public String store() ...{
           getTestDao().merge(test);
           
return SUCCESS;
       }

       
       
public String remove() ...{
        
for (int i = 0, size = ids.length; i < size; i++...{
            getTestDao().delete(getTestDao().findById(ids[i]));
        }

        
return SUCCESS;
    }


    
}


applicationContext.xml 主要是工具生成 的,只是将配置文件路径改下,代码如下:
<? xml version="1.0" encoding="UTF-8" ?>
<! DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd" >

< beans >


    
< bean  id ="struts"
        class
="org.springframework.orm.hibernate3.LocalSessionFactoryBean" >
        

你可能感兴趣的:(spring,Hibernate,bean,MyEclipse,咨询)