好几天没人发表,今天请教一个问题

bbhehe 2011-07-05
效验插入数据

判断插入数据是否重复,重复则不插入。
我在处理时出现问题,不知是否有人讲解下。
public ActionForward doUpdateOption(ActionMapping mapping, ActionForm form,      
        HttpServletRequest request, HttpServletResponse response)      
        throws ApplicationException {      
    OptionForm optionForm = (OptionForm) form;      
    ActionErrors errors = new ActionErrors();      
    Option option = optionForm.getOption();      
     
        // 校验重复性      
    if (!optionHandler.validateOptionRepeat(option.getOptionId(),option.getParentId(),option.getAttributeName(), option.getOptionDisplayTransId(), option.getOptionValue())) {      
        errors.add("option.attributeName", new ActionError(      
    "option.name.and.opitonDisplayTransId.are.repeat", option.getAttributeName()));      
                saveErrors(request, errors);      
                return mapping.findForward("updateOption");      
            }      
                System.out.print(option.getAttributeName());      
                option.setLastUpdatedBy(this.getUserId(request));      
                option.setCreatedBy(this.getUserId(request));      
                optionHandler.saveOption(option);    
bbhehe 2011-07-05
自己吱一声
draem0507 2011-07-19
只会struts2,现在项目用struts1刚开始,木办法帮你呵呵。支持下
1250605829 2012-04-19
- - 有个灰常简单的做法。

看你这是比较了对象里的每一个字段对吧。
其实你可以这样。直接写一个删除对象方法。把这些字段的值当做删除的条件语句中。
插入之前就执行一下这个删除。如果没有重复的话就删除信息也是删除空的。
如果存在的话就删除了重复的信息继续添加。这样就不需要考虑那么多问题了~

自己经常这样做。。 不晓得你系不系这个意思~

draem0507 2012-12-26
1250605829 写道
- - 有个灰常简单的做法。

看你这是比较了对象里的每一个字段对吧。
其实你可以这样。直接写一个删除对象方法。把这些字段的值当做删除的条件语句中。
插入之前就执行一下这个删除。如果没有重复的话就删除信息也是删除空的。
如果存在的话就删除了重复的信息继续添加。这样就不需要考虑那么多问题了~

自己经常这样做。。 不晓得你系不系这个意思~



故地重游,想来LZ是你这个意思了,亲的思路没有任何问题哈。
不过貌似可以通过Comparable接口来实现,这样更合理点
Global site tag (gtag.js) - Google Analytics