MVC
这个简单的MVC遵循下图为整体思路
解读MVC思想(jsp和servlet实现),其实MVC(Model,view,controllor)思想就是把代码分离开来各自分工合作,首先让我们结合实例来进行分析,看我们这个项目下会有一个 FrontControllor.java这个是用来进行处理请求的一个前段控制期用来处理一个前端发来的请求,让我们先来看一下前端控制器的内部实现原理吧!
继承了HttpServlet类并且覆盖了init()方法,并且通过super.init()可以知道,此方法覆盖相当于追加,大家一定好奇什么是ResourceBundle,那让我们来看一下API是怎么说的:资源包属于这样的系列,其成员共享一个公共的基本名称,但是名称中还有标识其语言环境的其他组件。例如,某个资源包系列的基本名称可能是 "MyResources"。该系列应该有一个默认资源包,其名称与其系列名相同( "MyResources"),如果不支持指定的语言环境,则应该将此资源包用作最后的手段。然后,此系列可根据需要提供特定于语言环境的成员,例如一个名为 "MyResources_de" 的德语资源包。 (我的天啊,小编都惊讶了,这不会是国际化吧?)我的理解是这个类可以统配一些资源包然后根据不同的语言环境切换道当前合适的资源包,让我们看一下这个类是如何使用这个方法的:如下图
实例化ResourceBundle类产生一个rb对象,rb对象属于”action”(知识扩展,通过31行我们可以推理出.getBundle()是一个静态方法,还不知道的小伙伴需要抓紧了复习java基础知识啦!),getKeys()是一个非静态方法,得到的是键值对里面的key的枚举,枚举是Enumeration它具有的方法只有两个,hasMoreElements(),nextElement(),通过key得到value(属于rb的键值对)接下来麻烦了,同学们业不理解下面这段代码啊!那好让我们一起来进行一下学习和解读:
反射编程的一些小的初级体会总结大体如下图
那么请问actions(是一个Map)里面存的value是什么东西?答案是已经实例化后的对象.接下来寻找那个资源包吧!如下图:
接着向下看
原理如同actions一样,不解释!
接下来核心代码!