跳过Struts2,直接学习Spring MVC
MVC,自己画的
属性(Property/Attribute),事件(Event),方法(method/procedure),函数(Function),JavaBean,EJB,POJO
先放两张图,明白什么属性同事件。
JavaBean百度定义:JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性,long和class方法获取。众所周知,属性名称符合这种模式,其他Java 类可以通过自省机制发现和操作这些JavaBean 的属性。
所以可以将JavaBean看作一个特定的类:
1。公开/Public
2。有无参构造器/构造方法 (可以new出新的实例)
3。暴露成员属性?这个就是个要注意的了,变量应该是不能被直接使用,所以要private(一般编码也不允许有public的变量,直接暴露,Class中的变量是用于本作用域的,静态另算),实现用getter/setter,所以应该将getter/setter看作属性,也就是Class.getName才是Class的Name属性。 ---------------------------这里就是要深刻理解的地方,一方面,类(Class)就是对象!对象的属性就是类的getter/setter,另一方面,这也体现了编码的规范性同设计的具体实现,对封装的理解。
4。暴露的方法:类暴露的方法是不是对象的事件?
再强化下:类方法(静态方法)是可以直接调用的,不用实例化(比如房子价格增长了)
事件-操作驱动,触发性质,比如鼠标点击事件
方法(函数,面对过程叫函数):事件的处理动作,比如对鼠标点击事件进行响应的处理
4。上面几点满足后,JavaBean可以作为一个基础组件(Component),被使用,这就要求这个组件必须序列化。