这是对(三)中问题的一些思考。

  对于一个Bean来说,如果它含有对自己属于检验的函数,我就把它叫做可以自检的Bean,反之就称做非自检函数,非自检的函数就需要其它人(主要是Action)的监督。

  以一个Person类为例。

  public class Person{

            …

             private int age;

             public void setAge(int age){this.age=age;}

             public int getAge(){return this.age;}

             …

        }

  这个Bean中并没有任何检测,这样的Bean在应用中会出现很多问题,比如说一个人的年龄为负数,这显然是不合理的。但这个检测应该由谁来做呢?由Bean自己来做,还是由Action来做?

  这就是一个自检和监督的问题,我们应该更侧重哪一方面?

  我个人而言,我更侧重于监督,自检为了适应更广泛的应用,只能对Bean较少的,最基本的检测,而其它大部分的事情都应该由其它人来做。

对于每一个Action来说,都应在Monitor中对Action的监督条件进行说明,由Monitor来进行监督,Action将所有监督的职责交给Monitor

监督的好处:

1.    Bean来说,他只存储信息,对Action来说,他只处理业务逻辑,而其中的所有检测工作都交给了Monitor

2.    检测条件有时候会发生改变,对于不同的Action改变会有所不同,但是他们可能应用同一个Bean。在条件发生改变时,针对Action只改变Monitor中的检测即可。

3.    BeanAction都从数据检测中脱离出来,加强数据的整洁度。

个人想法,希望会对大家有用。


评论

该日志第一篇评论

发表评论

评论也有版权!