`
isiqi
  • 浏览: 16618437 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Struts+hibernate入门实例-投票系统

阅读更多

本系统采用Struts + Hibernate 作为主题框架
数据库采用Mysql
开源包使用JSTL+JFreeChart

项目结构如下:
action
ChartServlet.java
VoteAction.java
VoteDeleteAction.java
VoteEditAction.java
VoteitemDeleteAction.java
VoteitemEditAction.java
VoteitemListAction.java
VoteitemSaveAction.java
VoteManageAction.java
VoteSaveAction.java
dao
IVoteDAO.java
VoteDAO.java
sql
script.sql
model
vote.hbm.xml
voteItem.hbm.xml
Vote.java
Voteitems.java
util
DAOFactory.java
HibernateDAO.java
HibernateFilter.java
HibernateUtil.java
SelectConst.java
VoteFunction.java

ChartServlet

packagecn.hxex.vote.action;

importjava.io.IOException;
importjava.util.Iterator;

importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;

importorg.jfree.chart.ChartFactory;
importorg.jfree.chart.ChartUtilities;
importorg.jfree.chart.JFreeChart;
importorg.jfree.chart.plot.PlotOrientation;
importorg.jfree.data.category.DefaultCategoryDataset;
importorg.jfree.data.general.DefaultPieDataset;

importcn.hxex.vote.dao.IVoteDAO;
importcn.hxex.vote.model.Vote;
importcn.hxex.vote.model.Voteitems;
importcn.hxex.vote.util.DAOFactory;

publicclassChartServletextendsHttpServlet...{

/***//**
*Constructoroftheobject.
*/

publicChartServlet()...{
super();
}


/***//**
*Destructionoftheservlet.<br>
*/

publicvoiddestroy()...{
super.destroy();//Justputs"destroy"stringinlog
//Putyourcodehere
}



publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException...{

doPost(request,response);
}



publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException...{

Stringid
=request.getParameter("id");
IVoteDAOvotedao
=DAOFactory.getVoteDAO();
Votevote
=votedao.getVote(id);
JFreeChartchart
=getChart(vote);
response.setContentType(
"image/jpeg");
ChartUtilities.writeChartAsJPEG(response.getOutputStream(),
100,chart,400,300);


}


publicstaticJFreeChartgetChart(Votevote)...{
JFreeChartchart
=null;
if(vote.getPictype().indexOf("PIE")==0)...{
DefaultPieDatasetdate
=newDefaultPieDataset();
Iteratoriter
=vote.getVoteitems().iterator();
while(iter.hasNext())...{
Voteitemsvi
=(Voteitems)iter.next();
date.setValue(vi.getTitle(),vi.getVotenum());
}

if("PIE".equals(vote.getPictype()))...{
chart
=ChartFactory.createPieChart(vote.getTitle(),date,false,false,false);
}
else...{
chart
=ChartFactory.createPieChart3D(vote.getTitle(),date,false,false,false);
}


}
else...{
DefaultCategoryDatasetdate
=newDefaultCategoryDataset();
Iteratorit
=vote.getVoteitems().iterator();
while(it.hasNext())...{
Voteitemsvi
=(Voteitems)it.next();
date.addValue(vi.getVotenum(),
"选项",vi.getTitle());

}

if("BAR".equals(vote.getPictype()))...{
chart
=ChartFactory.createBarChart(vote.getTitle(),"选项","数量",date,PlotOrientation.VERTICAL,false,false,false);
}

else...{
chart
=ChartFactory.createBarChart3D(vote.getTitle(),"选项","数量",date,PlotOrientation.VERTICAL,false,false,false);
}

}

returnchart;

}

publicvoidinit()throwsServletException...{
//Putyourcodehere
}


}


VoteAction
/**//*
*GeneratedbyMyEclipseStruts
*Templatepath:templates/java/JavaClass.vtl
*/

packagecn.hxex.vote.action;

importjava.util.Iterator;

importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;

importorg.apache.struts.action.Action;
importorg.apache.struts.action.ActionForm;
importorg.apache.struts.action.ActionForward;
importorg.apache.struts.action.ActionMapping;

importcn.hxex.vote.dao.IVoteDAO;
importcn.hxex.vote.model.Vote;
importcn.hxex.vote.model.Voteitems;
importcn.hxex.vote.util.DAOFactory;

/***//**
*MyEclipseStruts
*Creationdate:02-11-2007
*
*XDocletdefinition:
*@struts.actionvalidate="true"
*@struts.action-forwardname="success"path="123"
*/

publicclassVoteActionextendsAction...{
/**//*
*GeneratedMethods
*/


/***//**
*Methodexecute
*
@parammapping
*
@paramform
*
@paramrequest
*
@paramresponse
*
@returnActionForward
*/

publicActionForwardexecute(ActionMappingmapping,ActionFormform,
HttpServletRequestrequest,HttpServletResponseresponse)
...{
Stringid
=request.getParameter("id");
IVoteDAOvoteDao
=DAOFactory.getVoteDAO();
Votevote
=voteDao.getVote(id);

String[]voteitem
=request.getParameterValues(id);
if(voteitem!=null&voteitem.length>0)...{
for(inti=0;i<voteitem.length;i++)...{
Iteratoriter
=vote.getVoteitems().iterator();
while(iter.hasNext())...{
Voteitemsvi
=(Voteitems)iter.next();
if(voteitem[i].equals(vi.getId()))...{
vi.increaseVotenum();
break;
}

}

}

}

request.setAttribute(
"vote",vote);
returnmapping.findForward("success");
}

}

VoteDeleteAction

/**//*
*GeneratedbyMyEclipseStruts
*Templatepath:templates/java/JavaClass.vtl
*/

packagecn.hxex.vote.action;

importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;

importorg.apache.struts.action.Action;
importorg.apache.struts.action.ActionForm;
importorg.apache.struts.action.ActionForward;
importorg.apache.struts.action.ActionMapping;

importcn.hxex.vote.dao.IVoteDAO;
importcn.hxex.vote.model.Vote;
importcn.hxex.vote.util.DAOFactory;

/***//**
*MyEclipseStruts
*Creationdate:02-11-2007
*
*XDocletdefinition:
*@struts.actionvalidate="true"
*@struts.action-forwardname="success"path="123"
*/

publicclassVoteDeleteActionextendsAction...{
/**//*
*GeneratedMethods
*/


/***//**
*Methodexecute
*
@parammapping
*
@paramform
*
@paramrequest
*
@paramresponse
*
@returnActionForward
*/

publicActionForwardexecute(ActionMappingmapping,ActionFormform,
HttpServletRequestrequest,HttpServletResponseresponse)
...{
IVoteDAOvoteDao
=DAOFactory.getVoteDAO();
Stringid
=request.getParameter("id");

Votevote
=voteDao.getVote(id);
voteDao.deleteVote(vote);



request.setAttribute(
"vote",vote);

returnmapping.findForward("success");
}

}
/**//*
*GeneratedbyMyEclipseStruts
*Templatepath:templates/java/JavaClass.vtl
*/

packagecn.hxex.vote.action;

importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;

importorg.apache.struts.action.Action;
importorg.apache.struts.action.ActionForm;
importorg.apache.struts.action.ActionForward;
importorg.apache.struts.action.ActionMapping;

importcn.hxex.vote.dao.IVoteDAO;
importcn.hxex.vote.model.Vote;
importcn.hxex.vote.util.DAOFactory;

/***//**
*MyEclipseStruts
*Creationdate:02-11-2007
http://imag
分享到:
评论

相关推荐

    J2EE电子商务系统开发从入门到精通--基于Struts和Hibernate技术实现

    ### J2EE电子商务系统开发从入门到精通——基于Struts和Hibernate技术实现 #### J2EE概论 **1.1 简单双层架构到复杂多层架构** - **1.1.1 双层(C/S)软件架构设计** - 双层架构(客户端/服务器架构,Client/...

    J2EE电子商务系统开发从入门到精通基于Struts和Hibernate技术实现

    ### J2EE电子商务系统开发从入门到精通:基于Struts和Hibernate技术实现 #### J2EE概论 在深入探讨如何使用Struts和Hibernate技术来构建一个完整的电子商务系统之前,我们首先需要理解J2EE的基本概念及其体系架构...

    J2EE电子商务系统开发从入门到精通:基于Struts和Hibernate技术实现

    ### J2EE电子商务系统开发从入门到精通:基于Struts和Hibernate技术实现 #### J2EE概论 - **双层架构与多层架构的区别**: - 双层架构通常指的是客户端/服务器(Client/Server, C/S)架构,这种架构下的应用程序在...

    Struts2入门教程.pdf

    - **投票管理系统**:通过具体的案例分析,展示了Struts2在实际项目中的应用。 - **无纸化办公管理系统**:另一个实例,进一步加深对Struts2的理解。 - **数据采集系统**:介绍如何使用Struts2来构建数据采集系统,...

    Struts2入门v3.0.pdf

    - **投票管理系统**:通过一个完整的投票管理系统的开发案例,展示了Struts2在实际项目中的应用。 - **无纸化办公管理系统**:另一个案例研究,重点在于如何利用Struts2来构建高效的企业级应用。 - **数据采集系统**...

    struts2基础入门pdf,struts2全面介绍

    - **投票管理系统**:通过一个投票管理系统的实例,展示Struts2与其他技术(如Hibernate、Spring)的集成应用。 - **无纸化办公管理系统**:介绍如何利用Struts2框架构建一个无纸化办公系统。 - **数据采集系统**:...

    struts2系列教程

    - **实战案例**:通过具体的项目案例进一步加深对Struts2的理解,包括投票管理系统、无纸化办公管理系统、数据采集系统等。 以上内容概括了Struts2系列教程的主要知识点,旨在帮助读者从零开始学习并掌握Struts2...

    Strust2整理成册

    - **投票管理系统**:分析一个完整的投票管理系统项目。 - **无纸化办公管理系统**:探讨一个无纸化办公管理系统的开发过程。 - **数据采集系统**:介绍一个数据采集系统的实现细节。 #### 总结 Struts2是一个功能...

Global site tag (gtag.js) - Google Analytics