求大神指点! Java Action 终止,不报错
程序代码:
private String name;//从前台获取标签名称字符串 private Evaluation evaluation;//评价对象 private XXXDao xxxdao;//各种dao getXXX... setXXX...(这部分省略) //保存评价信息 public String testsaveEvaluation() { Timestamp time = new Timestamp(System.currentTimeMillis());//获取系统时间 Evaluation e = new Evaluation();//实例化一个Evaluation评价对象,并赋值 e.setGoodsId(3); int score = evaluation.getScore(); System.out.println(score); e.setLoginName("shaw80"); e.setScore(evaluation.getScore()); e.setFeeling(evaluation.getFeeling()); e.setTime(time); e.setDeleteFlag(0); this.evaluationDao.saveEvaluation(e);//保存评价对象 String [] str = name.split(","); System.out.println(str); for (String tagName : str)//遍历数组str { Tag tag = new Tag(); tag = this.tagDao.findTagByName(tagName);//根据标签名称查询标签 System.out.println(tagName); if( tag != null )//如果标签存在 { Evaluation_Tag et = new Evaluation_Tag();//实例化一个中间表对象,并赋值 System.out.println(e.getId()); et.setEvaluationId(e.getId()); System.out.println(tag.getId()); et.setTagId(tag.getId()); this.evaluationDao.saveEvaluationTag(et);//保存中间表----如果没有新标签,只能循环2次,保存前2条数据,保存第3条时debug停住不动。如果有新标签,先执行else,新标签和中间表能正常保存,循环回来,保存时debug停住不动,不报错。不保存。这是什么情况?? }else//如果标签不存在 { Tag newtag = new Tag();//实例化一个新标签,并赋值 newtag.setName(tagName); Goods goods = this.goodsDao.findByid(3);//根据商品id查询商品对象 newtag.setClassifyName(goods.getClassifyName()); newtag.setType("c"); newtag.setDeleteFlag(0); this.tagDao.saveTag(newtag);//保存标签信息 Evaluation_Tag et = new Evaluation_Tag();//实例化一个中间表对象,并赋值 et.setEvaluationId(e.getId()); et.setTagId(newtag.getId()); this.evaluationDao.saveEvaluationTag(et);//保存中间表 } } return "toIndex"; }
问题已在代码中标注:保存已存在标签的中间表时,debug时停住不动。不报错,不保存。找不到问题所在,请各位大神帮忙...
[ 本帖最后由 shaw80 于 2014-5-31 15:58 编辑 ]