floger1 2009-04-14 15:46
浏览 262
已采纳

ssh 框架下批量增加问题

看我页面和相应代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">



专家发送消息




消息发送





cellpadding="2">












<!--/s:hidden-->
/s:hidden
/s:hidden
/s:hidden




收件人:/s:label

listValue="bjiRealName" value="ids" theme="simple" >

/s:if/s:checkboxlist


主  题:/s:label

/s:textfield

内  容:/s:label



/s:submit

/s:form


保存方法代码
public String expSaveMessage()throws Exception{
String[] bjilist = getBjilist();
Message m = new Message();
lastreadTime = m.getLastreadTime();
if(lastreadTime==null){
lastreadTime = "未读";
}
sendTime = new Date();
for (int i = 0; i < bjilist.length; i++) {
receiveName = bjilist[i];
// System.out.println("*&*&*&&+========"+receiveName);
// BjilistByReveiveid = ids[i];
m.setReceiveName(receiveName);
m.setExpertlistBySendid(ExpertlistBySendid);
m.setSendflag(sendflag);
m.setReceiveflag(receiveflag);
m.setReceiveName(receiveName);
m.setSendName(sendName);
m.setMessage(message);
m.setSendTime(sendTime);
m.setLastreadTime(lastreadTime);
m.setSubjectTitle(subjectTitle);
messageService.save(m);
}

    return SUCCESS;
}

没有错误错误但是执行完以后
有两个接受人的话,
只增加一次 insert
第二次是就是 update 修改哪一行数据:这是怎么回事呀

  • 写回答

3条回答 默认 最新

  • zjh527 2009-04-14 19:08
    关注

    改成如下形式,因为你每回都是在一个对象上进行的修改,造成第一次insert,后面的都是update。所以你需要在for循环中新建Message对象。
    [code="java"]
    public String expSaveMessage()throws Exception{
    String[] bjilist = getBjilist();

    lastreadTime = m.getLastreadTime(); 
    if(lastreadTime==null){ 
    
        lastreadTime = "未读"; 
    } 
    
    Message m = null;
    sendTime = new Date(); 
    for (int i = 0; i < bjilist.length; i++) { 
        m = new Message();
        receiveName = bjilist[i]; 
        m.setReceiveName(receiveName); 
        m.setExpertlistBySendid(ExpertlistBySendid); 
        m.setSendflag(sendflag); 
        m.setReceiveflag(receiveflag); 
        m.setReceiveName(receiveName); 
        m.setSendName(sendName); 
        m.setMessage(message); 
        m.setSendTime(sendTime); 
        m.setLastreadTime(lastreadTime); 
        m.setSubjectTitle(subjectTitle); 
        messageService.save(m); 
    } 
    
    return SUCCESS; 
    

    }
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services