如何实现通知公告置顶操作

    要求:通过top数据字段1(置顶)、0进行标识,置顶按钮首先需要将其他top为1的的值放到集合noticeinfolist中,然后将对应的top改为0,并保存到数据库中。再根据页面传过来的notid,找出对应的那条数据,并将top值改为1。
    (下面只列出主要代码)
  • iceinfolist.jsp
 
 
<%@ taglib prefix="s" uri="/struts-tags"%>
<a href="noticeinfomanager.action?action=totop¬id=<s:property value='#noticeinfo.notid'/>">置顶</a>
  • struts-noticeinfo.xml(action中转站)
 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
      <package name="notice" extends="struts-default"> 
<action name="noticeinfomanager" class="noticeinfomanagerAction"> 
<result name="ok">/notice/ok.jsp</result>
<result name="enter">/notice/addiceinfo.jsp</result>
<result name="noticeinfolist">/notice/iceinfolist.jsp</result>
<result name="updateone">/notice/updatenoticeinfo.jsp</result>
<result name="show">/notice/onenoticeinfo.jsp</result> 
</action> 
  </package>
</struts>
  • NoticeinfomanagerAction.java(控制层)
/* 置顶操作,也就是置1操作*/
public String totop()
{
//首先将数据库中的所有top为1的字段值修改为0
noticeinfolist = noticeinfoService.saveOneNotid();

for(int i=0;i<noticeinfolist.size();i++){
Noticeinfo s = noticeinfoService.findByid(noticeinfolist.get(i).getNotid());//根据符合条件记录的那条数据的notid
top = 0;
s.setTop(top);
noticeinfoService.saveOneRecord(s);
}
m = noticeinfoService.findByid(notid);
//然后将所指定的top值
top=1;
m.setTop(top);
noticeinfoService.saveOneRecord(m);
/*
ActionContext cx=ActionContext.getContext();
String adm_username=(String)cx.getSession().get("admin");
if(adm_username != null && !"".equals(adm_username)){ 
return "zhiding";
}
*/
return "ok";
}
  • NoticeinfoDaoHib.java
public List<Noticeinfo> saveOneNotid() {
    List<Noticeinfo> list = getHibernateTemplate().find("from Noticeinfo n where n.top='1'");
    if(list==null || list.size()<1)
        return null;
    else
        return list;
}

实现功能虽然比较简单,但是还是记录下来,供以后复习使用。

学习Java的同学注意了!!!
学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Java学习交流群,群号码:543120397 我们一起学Java!
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曾卫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值