package web.action;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import orm.Item;
import orm.Subject;
import orm.User;
import biz.OptionBiz;
import biz.SubjectBiz;
import biz.impl.OptionBizImpl;
import biz.impl.SubjectBizImpl;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class VoteAction extends ActionSupport {
private static final long serialVersionUID = 2963874648843589294L;
private SubjectBiz biz = new SubjectBizImpl();
private OptionBiz optionBiz = new OptionBizImpl();
private int pageSize = 5;
private int p = 1; // 页码
private int pageCount;// 记录总页数
private String title;
private int type;
private String[] item;
private String message;
private long vid;
private long[] choose;
public long[] getChoose() {
return choose;
}
public void setChoose(long[] choose) {
this.choose = choose;
}
public long getVid() {
return vid;
}
public void setVid(long vid) {
this.vid = vid;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public void setTitle(String title) {
this.title = title;
}
public void setType(int type) {
this.type = type;
}
public void setItem(String[] item) {
this.item = item;
}
public int getPageCount() {
return pageCount;
}
public void setPageCount(int pageCount) {
this.pageCount = pageCount;
}
public int getP() {
return p;
}
public void setP(int p) {
this.p = p;
}
@Override
public String execute() throws Exception {
try {
/* 得到记录的总页数 */
int num = biz.getInfoCount();
this.pageCount = num % pageSize == 0 ? num / pageSize : num
/ pageSize + 1;
/* 得到第一页数据 */
List<Subject> subjects = biz.getSubjects(1, pageSize);
ActionContext.getContext().getSession().put("subjects", subjects);
return SUCCESS;
} catch (Exception e) {
ActionContext.getContext().getSession().put("errMes",
e.getMessage());
return ERROR;
}
}
/**
* 添加投票
*
* @return
*/
public String doAdd() {
try {
Subject subject = new Subject();
subject.setTitle(this.title);
subject.setType(this.type);
for (int i = 0; i < item.length; i++) {
Item it = new Item();
it.setOption(item[i]);
it.setOrder(i + 1);
it.setSubject(subject);
subject.getItems().add(it);
}
if (biz.addSubject(subject) > 0) {
return SUCCESS;
} else {
this.message = "添加失败..请稍后再试!";
return INPUT;
}
} catch (Exception e) {
// e.printStackTrace();
ActionContext.getContext().getSession().put("errMes",
e.getMessage());
return ERROR;
}
}
/**
* 分页显示信息
*
* @return
*/
public String list() {
try {
List<Subject> subjects = biz.getSubjects(p, pageSize);
ActionContext.getContext().getSession().put("subjects", subjects);
return SUCCESS;
} catch (Exception e) {
ActionContext.getContext().getSession().put("errMes",
e.getMessage());
return ERROR;
}
}
public String doGetOneVote() {
try {
// System.out.println(vid);
Subject subject = biz.getSubjectById(vid);
/* 创建list集合有序排列具体选项 (解决set集合无序特性)*/
Set<Item> items = subject.getItems();
List<Item> itemsList = new ArrayList<Item>();
/*向List集合填充值*/
for(Item item : items){
itemsList.add(item);
}
/*按照item.order给list集合排序*/
for (Item item : items) {
itemsList.set(item.getOrder() - 1, item);
}
ActionContext.getContext().getSession().put("items", itemsList);
ActionContext.getContext().getSession().put("subject", subject);
return SUCCESS;
} catch (Exception e) {
// e.printStackTrace();
ActionContext.getContext().getSession().put("errMes",
e.getMessage());
return ERROR;
}
}
/*更新投票信息*/
public String doUpdate(){
try{
/*封装更新后的数据*/
Subject subject = new Subject();
subject.setId(vid);
subject.setTitle(title);
subject.setType(type);
// for(int i=0;i<item.length;i++){
// Item it = new Item();
// it.setOrder(i+1);
// it.setOption(item[i]);
// subject.getItems().add(it);
// }
if(biz.updateSubject(subject, item) == 1){
return SUCCESS;
}else{
return INPUT;
}
}catch (Exception e) {
ActionContext.getContext().getSession().put("errMes",
e.getMessage());
return ERROR;
}
}
public String vote(){
return this.doGetOneVote();
}
/*提交投票*/
public String postChoose(){
try{
User user = (User)ActionContext.getContext().getSession().get("user");
if(optionBiz.add(vid, choose, user) > 0){
return SUCCESS;
}else{
return ERROR;
}
}catch (Exception e) {
ActionContext.getContext().getSession().put("errMes",
e.getMessage());
return ERROR;
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
在线投票系统源码-hibernate加struts2 (109个子文件)
VoteAction.class 5KB
SubjectDaoImpl.class 4KB
OptionDaoImpl.class 3KB
HibernateSessionFactory.class 3KB
UserDaoImpl.class 2KB
OptionBizImpl.class 2KB
RegisterAction.class 2KB
ResultViewBizImpl.class 2KB
UserAction.class 2KB
SubjectBizImpl.class 2KB
CheckVote.class 2KB
ResultViewAction.class 2KB
CheckAdmin.class 2KB
ResultViewDaoImpl.class 1KB
CheckUser.class 1KB
Subject.class 1KB
UserBizImpl.class 1KB
User.class 1KB
ResultView.class 1KB
Item.class 1KB
Option.class 1KB
Test.class 1KB
ItemDaoImpl.class 1003B
SubjectDao.class 471B
SubjectBiz.class 471B
UserDao.class 314B
UserBiz.class 314B
OptionDao.class 300B
ResultViewBiz.class 276B
ResultViewDao.class 276B
OptionBiz.class 229B
ItemDao.class 185B
.classpath 5KB
org.eclipse.wst.jsdt.ui.superType.container 49B
g.css 848B
m.css 343B
voteAdd.css 247B
VoteAction.java 5KB
HibernateSessionFactory.java 3KB
SubjectDaoImpl.java 3KB
Test.java 2KB
UserDaoImpl.java 2KB
ResultViewBizImpl.java 2KB
SubjectBizImpl.java 1KB
OptionBizImpl.java 1KB
OptionDaoImpl.java 1KB
UserAction.java 1KB
RegisterAction.java 1KB
CheckVote.java 1KB
UserBizImpl.java 934B
ResultViewAction.java 925B
SubjectDao.java 922B
SubjectBiz.java 877B
User.java 868B
CheckAdmin.java 848B
CheckUser.java 843B
ResultViewDaoImpl.java 784B
Subject.java 735B
ResultView.java 730B
Item.java 687B
Option.java 636B
OptionDao.java 602B
UserBiz.java 594B
UserDao.java 594B
ItemDaoImpl.java 516B
OptionBiz.java 448B
ResultViewDao.java 348B
ResultViewBiz.java 296B
ItemDao.java 261B
voteAdd.js 954B
e.js 770B
m.js 511B
g.js 307B
.jsdtscope 500B
edit.jsp 3KB
view.jsp 3KB
voteList.jsp 3KB
vote.jsp 2KB
voteAdd.jsp 2KB
register.jsp 1KB
list.jsp 1KB
index.jsp 1KB
test.jsp 1KB
succeed.jsp 667B
addSu.jsp 617B
erro.jsp 601B
MANIFEST.MF 36B
.myhibernatedata 550B
.mymetadata 285B
org.eclipse.wst.jsdt.ui.superType.name 6B
.project 2KB
data.sql 2KB
struts.xml 3KB
struts.xml 3KB
RegisterAction-validation.xml 2KB
RegisterAction-validation.xml 2KB
hibernate.cfg.xml 1KB
hibernate.cfg.xml 1KB
web.xml 926B
Subject.hbm.xml 689B
共 109 条
- 1
- 2
资源评论
- wangsen123jay2013-09-15用着真的很不错
- wangfansail2012-11-17程序写的不错,注释详细,若有一个较为详细的说明会更好,便于修改。
- sanfenqing2013-07-02程序写的不错,注释详细
hewei5894
- 粉丝: 0
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于ATLAB + Psychtoolbox 心理学实验,情绪词汇效价判断
- 美赛数学建模算法-使用Matlab实现神经网络NeuralNetwork-包括BP+LVQ-国赛-题解.zip
- hb-mapper-makertbin.log
- dfcf_silence_upgrade_cfw_10.15.3_20240318163518_64.apk
- 美赛数学建模算法-使用Matlab实现多元分析MultivariteAnalysis-包括聚类分析+主成分分析-国赛-题解
- 构成学1.psd
- 美赛数学建模算法-使用Matlab实现线性规划LinearProgramming-国赛-题解.zip
- npp-7.2.2-Installer-语言修改器
- FY4B AGRI先进的静止轨道辐射成像仪波段响应函数
- 学习Demo影视推荐、音乐播放、地图
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功