struts2 同时删除数据库中多条记录简单实例

 代码如下 复制代码

部分代码删了,黄色背景的为主题关键测试,经过测试,通过找资料忙了一下午,终于将其弄成功

jsp页面

 <form name="delForm" id="delForm" method="post" action="<%=basePath%>delSelectNews">
  <table id="mainpage" width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td><table id="subtree1" style="DISPLAY: " width="100%" border="0" cellspacing="0" cellpadding="0">

        <tr>
          <td><table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">

               <tr>
               <td height="20"><span class="newfont07">选择:<a href="#" class="right-font08" onclick="selectAll();">全选</a>-<a href="#" class="right-font08" onclick="unselectAll();">反选</a></span>
                 <input name="delselect" type="submit" class="right-button08" value="删除所选新闻" onclick="deleSelect()"/>
                 <input name="Submit2" type="button" class="right-button08" value="新建新闻" onclick="link();"/></td>
               </tr>
              <tr>
                <td height="40" class="font42"><table width="100%" border="0" cellpadding="4" cellspacing="1" bgcolor="#464646" class="newfont03">
                  <tr>
                    <td height="20" colspan="14" align="center" bgcolor="#EEEEEE"class="tablestyle_title">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 新闻列表 &nbsp;</td>
                  </tr>
                  <tr>
                    <td width="5%" align="center" bgcolor="#EEEEEE">选择</td>
                    <td width="15%" height="20" align="center" bgcolor="#EEEEEE">新闻标题</td>
                    <td width="10%" align="center" bgcolor="#EEEEEE">发布人</td>
                    <td width="15%" align="center" bgcolor="#EEEEEE">发布时间</td>
                    <td width="10%" align="center" bgcolor="#EEEEEE">新闻是否置顶</td>
                    <td width="10%" align="center" bgcolor="#EEEEEE">新闻是否已发布</td>
                    <td width="26%" align="center" bgcolor="#EEEEEE">操作</td>
                  </tr>
 
                  <s:iterator value="InfoList" var="c">
                      <tr align="center"><td bgcolor="#FFFFFF">
                    <input type="checkbox" name="delid" value="${infoId}" /></td>
                    <td height="20" bgcolor="#FFFFFF"><s:property value="#c.infoTitle"/></td>
                    <td bgcolor="#FFFFFF"><s:property value="#c.userPuber"/></td>
                    <td bgcolor="#FFFFFF"><s:property value="#c.infoTime"/></td>
                    <td bgcolor="#FFFFFF">
                    <s:if test="#c.isTop==1">置顶</s:if>
                    <s:if test="#c.isTop==0">否</s:if>
                    </td>
                    <td bgcolor="#FFFFFF">
                    <s:if test="#c.infoIsshow==1">已经发布</s:if>
                    <s:if test="#c.infoIsshow==0">存草稿</s:if>
                    </td>
                    <td bgcolor="#FFFFFF"><a href="delOneNews?infoId=${infoId}" onclick="isdel()">删除</a>|<a href="showOneNews?infoId=${infoId}">编辑</a></td>
                  </tr>
                  </s:iterator>
                </table></td>
</table>
</form>

 

js代码

view sourceprint?

 

function deleSelect()

 

{

 

var delValue="";

 

var flag=false;

 

var de= document.getElementsByName("delid");

 

for(i=0;i<de.length;i++)

 

{

 

if(de[i].checked){

 

delValue+=","+de[i].value;

 

flag = true;

 

}

 

}

 

if(flag==false)

 

{

 

alert("至少你要选择一个待删除记录");

 

return false;

 

}

 

}

 

 

 

 

strust.xml配置

..............

<!-- 删除所选新闻 -->

<action name="delSelectNews" class="cn.swust.action.InfoPublishAction" method="delSelectNews">

<result type="redirect" name="success">showNews</result>

</action> 

...................

Action处理

package cn.swust.action;

import java.util.List;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.ServletActionContext;

import cn.swust.bean.InfoPublishBean;
import cn.swust.service.InfoPublishService;

import com.opensymphony.xwork2.ActionSupport;

public class InfoPublishAction extends ActionSupport{
    /**
     *
     */
    private static final long serialVersionUID = 1L;
    private InfoPublishService InfoService = new InfoPublishService();
    private InfoPublishBean  Info = new InfoPublishBean();
    private int infoId;//新闻id;参数传递用
    private List<InfoPublishBean> InfoList;
    private String startTime;//用于按时间段查询
    private String endTime;
   
    private long[]delid=new long[]{};
    public String execute(){
            return "error";
    }
    /**
     * 增加新闻
     * @return
     */
    public String addNews()
    {   
        System.out.println("内容长度"+Info.getInfoContent().length());
        Info.setInfoIsshow(1);
        InfoService.addNews(Info);
        return SUCCESS;
    }
    /**
     * 显示所有新闻列表
     * @return
     */
    public String showAllNews()
    {
        InfoList = InfoService.queryNews();
        System.out.println("新闻数量"+InfoList.size());
        if(InfoList.size()>0)
        return SUCCESS;
        else
            return "error";
    }
    /**
     * 根据时间段查询
     * @return
     */
    public String showNewsByTime()
    {   
        HttpServletRequest request = ServletActionContext.getRequest();
        startTime=request.getParameter("startTime");
        endTime = request.getParameter("endTime");
        System.out.println("开始时间 "+startTime+" 结束时间 "+endTime);
        InfoList = InfoService.queryNewsByTime(startTime, endTime);
        System.out.println("新闻数量"+InfoList.size());
        if(InfoList.size()>0)
        return SUCCESS;
        else
            return "error";
    }
    /**
     * 删除一条新闻
     * @return
     */
    public String delOneNews()
    {
        System.out.println(infoId);
        InfoService.delNews(infoId);
        return SUCCESS;
    }
    /**
     * 删除所选新闻
     * @return
     */
    public String delSelectNews()
    {
        System.out.println("所选新闻");
        for(int i=0;i<this.delid.length;i++)
            InfoService.delNews((int)delid[i]);
        return SUCCESS;
    }
    /**
     * 显示一条新闻列表
     * @return
     */
    public String showOneNews()
    {
        Info = InfoService.queryOneNews(infoId);
        return SUCCESS;
    }
    /**
     * 修改一条新闻
     * @return
     */
    public String updateNews()
    {
        Info.setInfoId(infoId);
        Info.setInfoIsshow(1);
        InfoService.updateNews(Info);
        return SUCCESS;
    }
   
   
    public InfoPublishService getInfoService() {
        return InfoService;
    }

    public void setInfoService(InfoPublishService infoService) {
        InfoService = infoService;
    }

    public InfoPublishBean getInfo() {
        return Info;
    }

    public void setInfo(InfoPublishBean info) {
        Info = info;
    }
    public List<InfoPublishBean> getInfoList() {
        return InfoList;
    }
    public void setInfoList(List<InfoPublishBean> infoList) {
        InfoList = infoList;
    }
    public int getInfoId() {
        return infoId;
    }
    public void setInfoId(int infoId) {
        this.infoId = infoId;
    }
    public String getStartTime() {
        return startTime;
    }
    public void setStartTime(String startTime) {
        this.startTime = startTime;
    }
    public String getEndTime() {
        return endTime;
    }
    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }
    public long[] getDelid() {
        return delid;
    }
    public void setDelid(long[] delid) {
        this.delid = delid;
    }
}

时间: 2024-10-14 04:38:44

struts2 同时删除数据库中多条记录简单实例的相关文章

sql 删除数据库中的重复记录方法

删除数据库中的重复记录(且仅保留一条有效记录)示例-  代码如下 复制代码 create table A ( userID int identity(1,1), userName varchar(20), userPwd varchar(20), userEmail varchar(50) ) insert into A(userName,userpwd) select 'qin','qin' union all select 'qin','qin1' union all select 'qin

关于显示数据库中某条记录详细内容的问题

问题描述 各位前辈.本人第一次开发asp.net的网站.自学很辛苦.很多问题没有经验.现在遇到一个问题.情况这样.在做类似论坛的一个功能(access数据库.其中的字段为主题.内容.id等).从数据库中取出所有记录的主题.通过repeater绑定显示出来已经搞定.现在是想能点击某个主题能显示出相应主题记录的内容.也就是说要实现类似csdn这样的功能.点击帖子列表中的某个帖子主题,打开另一个页面显示详细内容...页面传值等问题也已经搞定.没搞定的问题就是该如何显示内容?不知道要绑定到什么控件显示合

db2-DB2取100到200条记录无排序(取出数据库中固定的记录)

问题描述 DB2取100到200条记录无排序(取出数据库中固定的记录) 第一种:思路-->>现获取前100条然后查询结果集在这100条意外再取前100条记录. 代码:SELECT * FROM TABLE WHERE ID not in ( SELECT ID FROM TABLE FETCH FIRST 100 ROWS ONLY ) FETCH FIRST 100 ROWS ONLY . 第二种:思路-->>分页技术,给所有记录添加id,然后取101到200条记录. 代码:SE

sqlite数据库怎么统计某一字段记录中某条记录出现的次数。

问题描述 sqlite数据库怎么统计某一字段记录中某条记录出现的次数. 我数据库中有一条字段路面有很多记录,我想要知道这些记录中某一条记录出现的次数. 应该怎么写. 解决方案 select count(t) from. ... where..

datagrid/GridView 控件中的列,添加编辑(删除,更新) 如果直接删除数据库中的记录,更新数据库的记录

问题描述 datagrid/GridView控件中的列,添加编辑(删除,更新)如果直接删除数据库中的记录,更新数据库的记录报错数据源,没有设置deletecommang对象 解决方案 解决方案二:是写在GridView1_RowDeleting事件里面???解决方案三:要不就是在模版列里面CommandName="Delete"如下<ItemTemplate><asp:LinkButtonID="LinkButton3"runat="se

如何查找、删除表中重复的记录

重复 如何查找.删除表中重复的记录软件环境: 1.Windows NT4.0+ORACLE 8.0.42.ORACLE安装路径为:C:\ORANT问题提出: 1.当我们想要为一个表创建唯一索引时,如果该表有重复的记录,则无法创建成功. 方法原理: 1.Oracle中,每一条记录都有一个rowid,rowid在整个数据库中是唯一的, rowid确定了每条记录是在ORACLE中的哪一个数据文件.块.行上. 2.在重复的记录中,可能所有列的内容都相同,但rowid不会相同,所以只要确定出重复记录中 那

如何删除数据库中的冗余数据(翻译)

数据|数据库 作为数据库的开发者,我们经常面临着要找出及删除数据库中冗余数据的任务,如果数据库中有大量的冗余数据(占总数的百分比太多),数据的精确性和可靠性将受到影响,同时也影响着数据库的性能,那么如何解决这个问题呢?下面我将探讨关于这个问题的这个解决方案,oracle也为我们提供了一个解决方案,但是Oracle提供的解决方案不够完美,遇到大批量数据那个解决方案工作起来很慢 应该怎么删除冗余数据呢?在这里我们应用一个PL/SQl方案(一个自定义的存储过程)或者一个SQL语句的解决方案(使用一个分

sql删除数据库中所有表与数据语句

使用sql删除数据库中所有表是不难的,就是遍历一下数据库中所有用户表,并将它清除,下边是具体的sql语句,在关键部分已经作了详细的注释:  代码如下 复制代码 --变量@tablename保存表名 declare @tablename nvarchar(100) --将用户表全部保存到临时表#tablename中 SELECT [name] into #tablename FROM sysobjects WHERE type = 'U'; --当#tablename有数据时 while(sele

mysql delete 删除一条记录简单方法

mysql教程 删除一条记录简单方法,应该说是最简单的入门级的了,下面我们来看看如何利用mysql sql语句来删除一条记录吧. mysql>delete from 表名 where id=1; query ok, 这样就可以删除了, 如果你和php教程 mysql配置只要利用php连接到数据库教程再用php mysql_query("delete from 表名 where id=1");就可以删除了. <?php $con = mysql_connect("l