秦鼎科技
  您的位置  您现在的位置: 秦鼎科技有限公司 >> 最新动态 >> 首页
 
  课程详情
·JAVA就业启航培训课程
·JAVA高薪就业培训课程
·JAVA外企就业高级课程
·Sun认证SCPJ2培训课程
·Oracle数据库管理员课程
·Unix/Linux系统工程师课程
·JAVA手机游戏开发课程
·J2ME移动应用工程师课程
 
秦鼎优势
·丰富的课程体系   
·强大的师资阵容   
·真实的研发项目   
·完善的就业保障   
·先进的教学理念   
·高档的电脑设备   
·舒适的教学环境   
·人性的管理模式   
 
资源站点
·J2SE   
·J2EE   
·J2ME   
·STRUTS   
·HIBERNATE   
·SPRING   
·TAPESTRY   
·IBATIS   
 
 
 
 
struts+hibernate+spring 开发入门
浏览次数: 82   作者:--   创建时间:2007-12-26 11:32:02   文章来源:原创
 
1.先建张表
用的是mysql数据库..
文章表.

  CREATE     TABLE   `t_article` (
  `a_id`   int  (  11  )   NOT     NULL   auto_increment,
  `a_sort`   int  (  11  )   NOT     NULL     default     '  0  '  ,
  `a_title`   varchar  (  50  )   default     NULL  ,
  `a_body`   text  ,
  `a_author`   varchar  (  11  )   default     ''  ,
  `a_hit`   int  (  11  )   NOT     NULL     default     '  0  '  ,
  `c_id`   int  (  11  )   default     '  0  '  ,
  `a_date`   varchar  (  20  )   default     NULL  ,
    PRIMARY     KEY    (`a_id`)
)   
2:写vo


package  firstspring.vo;
public   class  articleVO  {
     private   int  a_id;
     private   int  a_sort;
     private   int  a_hit;
     private   int  c_id;
     private  String a_title;
     private  String a_body;
     private  String a_author;
     private  String a_date;


     public  articleVO()  {
    } 
    // 写上get() set()方法 
3 写VO映射文件


<  xml version="1.0" encoding="UTF-8"  > 
    "-//Hibernate/Hibernate Mapping DTD 2.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" > 
< hibernate-mapping > 
     < class  name ="firstspring.vo.articleVO"  table ="t_article"   > 
     < id  name ="a_id"  column ="a_id"  unsaved-value ="0"   > 
       < generator  class ="native" /> 
   
      < property  name ="c_id"     column ="c_id" /> 
      < property  name ="a_title"  column ="a_title" /> 
      < property  name ="a_sort"   column ="a_sort" /> 
      < property  name ="a_date"   column ="a_date" /> 
      < property  name ="a_body"   column ="a_body" /> 
      < property  name ="a_hit"    column ="a_hit" /> 
      < property  name ="a_author"  column ="a_author" />    
    
 
4: 写dao层接口和bll层接口
  4.1 dao层接口

package  firstspring.idao;
import  firstspring.vo.articleVO;
public   interface  ArticleIdao  {
    
     void  addArticle(articleVO vo);         

4.2 bll层接口

package  firstspring.idao;
import  firstspring.vo.articleVO;
public   interface  IArticleBLL  {
      void  addArticle(articleVO vo);  

5:写Articledao类


package  firstspring.dao;
import  org.springframework.orm.hibernate.support.HibernateDaoSupport;
import  firstspring.idao.ArticleIdao;
import  firstspring.vo.articleVO;
public   class  ArticleDal  extends  HibernateDaoSupport  implements  ArticleIdao  {
     public  ArticleDal()  {
    } 
     public   void  addArticle(articleVO vo)
     {
         this .getHibernateTemplate().save(vo);
         this .getHibernateTemplate().flush();
        
    } 


6.写Articlebll类

package firstspring.bll;
import firstspring.idao.ArticleIdao;
import firstspring.idao.IArticleBLL;
import firstspring.vo.articleVO;

public class ArticleBll implements IArticleBLL {
   private ArticleIdao dal=null;
    public ArticleBll() {
    }
    public void addArticle(articleVO vo)
    {
        dal.addArticle(vo);
    }

    public ArticleIdao getDal() {
        return dal;
    }

    public void setDal(ArticleIdao dal) {
        this.dal = dal;
    }
}
7:添加struts框架。
  7.1 建个BaseAction类继承Action

package firstspring.struts;

import org.apache.struts.action.*;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;
import javax.servlet.ServletContext;

public abstract class BaseAction extends Action {
    
    private WebApplicationContext wac;
    public BaseAction() {
    }
    public void setServlet(ActionServlet actionServlet)
    {
        super.setServlet(actionServlet);
        ServletContext servletContext=actionServlet.getServletContext();
       wac=WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext);
       //wac.get
    }
    public WebApplicationContext getweb()
    {
        return wac;
    }
  
}
8:添加articleForm

package firstspring.struts;

import javax.servlet.*;
import javax.servlet.http.*;

import org.apache.commons.validator.*;
import org.apache.struts.action.*;
import org.apache.struts.validator.*;

public class articleForm extends ValidatorForm {
    private String a_auhor;
    private String a_body;
    private String a_date;
    private Integer a_hit;
    private Integer a_id;
    private Integer a_sort;
    private String a_title;
    private Integer c_id;

    public String getA_auhor() {
        return a_auhor;
    }

    public void setA_auhor(String a_auhor) {
        this.a_auhor = a_auhor;
    }

    public void setC_id(Integer c_id) {
        this.c_id = c_id;
    }

    public void setA_title(String a_title) {
        this.a_title = a_title;
    }

    public void setA_sort(Integer a_sort) {
        this.a_sort = a_sort;
    }

    public void setA_id(Integer a_id) {
        this.a_id = a_id;
    }

    public void setA_hit(Integer a_hit) {
        this.a_hit = a_hit;
    }

    public void setA_date(String a_date) {
        this.a_date = a_date;
    }

    public void setA_body(String a_body) {
        this.a_body = a_body;
    }

    public String getA_body() {
        return a_body;
    }

    public String getA_date() {
        return a_date;
    }

    public Integer getA_hit() {
        return a_hit;
    }

    public Integer getA_id() {
        return a_id;
    }

    public Integer getA_sort() {
        return a_sort;
    }

    public String getA_title() {
        return a_title;
    }

    public Integer getC_id() {
        return c_id;
    }

    public ActionErrors validate(ActionMapping actionMapping,
                                 HttpServletRequest httpServletRequest) {
        ServletContext application=this.getServlet().getServletContext();
        ActionErrors errors=new ActionErrors();
        String validationKey=this.getValidationKey(actionMapping,httpServletRequest);
        Validator validator=Resources.initValidator(validationKey,this,application,httpServletRequest,errors,page);
//String,Object,ServletContext,HttpServletRequest,ActionMessages,int
        try
        {
            validatorResults=validator.validate();
        }
        catch(ValidatorException e)
        {
            //log.error(e.getMessage(),e);
        }
        return null ;

    }

    public void reset(ActionMapping actionMapping,
                      HttpServletRequest servletRequest) {
    }
}

9:添加ArticleAction继承刚刚建的BaseAction


package firstspring.struts;

import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForm;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForward;
import firstspring.vo.articleVO;
import firstspring.idao.IArticleBLL;

public class articleAction extends BaseAction {
    public ActionForward execute(ActionMapping mapping, ActionForm form,
                                 HttpServletRequest request,
                          HttpServletResponse response) {
                                 //这里有几个数据直接写上了,没有从前台表单取。。     
        articleForm f = (articleForm) form;
        articleVO vo=new articleVO();
        vo.setA_author(f.getA_auhor());
        vo.setA_body(f.getA_body());
        vo.setA_hit(100);
        vo.setA_date(f.getA_date());
        vo.setA_sort(0);
        vo.setC_id(1);
        vo.setA_title(f.getA_title());
        //IArticleBLL 
     IArticleBLL ibll=(IArticleBLL)this.getweb().getBean("articlebll");
     ibll.addArticle(vo);
     
       return null;
    }
}

好了。到这就快差不多了。。还有个重要的东西。写个appcontext.xml配置文件。工厂就在这了。。

< xml version="1.0" encoding="UTF-8" >
    "http://www.springframework.org/dtd/spring-beans.dtd">




  org.gjt.mm.mysql.Driver
  jdbc:mysql://localhost:3306/wjcms
  root
  wujun



    

        
            
        


        
            
                
                    articleVO.hbm.xml
                

       
            

            
        

        
            
                
                    net.sf.hibernate.dialect.MySQLDialect
                
                
                    true
                
            

        
    


    
       
    
    
    
          
    



建个jsp页面。测试添加一条记录看看。这是前台的代码。。


























到这就快差不多了。还有一个小事情,在web.xml里记的加上一句

 
    context
    org.springframework.web.context.ContextLoaderServlet
    1
  


好,运行一下。。OK 。数据进数据库了。
 

秦鼎科技
版权所有 Copyright 2004-2008 秦鼎科技有限公司
地址:海淀区紫竹院路曙光花园智业园A座8C

电话:010-88465543、88465635

Email:qinpower2006@163.com
返回顶端