自定义MVC框架

       MVC 是一种设计模式。他的目的就是将 模型(其实也就是 业务逻辑)  和试图 (页面展示) 分离 , 使模型和视图可以独立修改,而不会影响到对方 . 大多数软件架构设计时都采用这一模式 .

     使用MVC模式有很多好处. 当一个通过浏览器浏览使用的系统 想要开发手机版本的时候 , 只需要重新开发视图, 模型部分定义的业务逻辑不用修改就可以重用 . 很多软件需要同时推出 B/S  和  C/S架构版本 , 采用MVC模式, 模型部分可以完全重用 , 开发不同的视图即可 . 

     在MVC中,M指的是 Model(模型) , 表示程序处理业务逻辑的部分; V指的是( View) 视图层 , 表示程序负责展示数据/获得用户请求的部分 ; C指的是 Controller (控制器) ,负责从V接收用户输入 , 调用M , 返回数据到V . 我们可以看到 C 在MVC中起到类似中介的作用, 从而保证 M  和 V 不会直接交互, 从而保证一方更改时另一方不用跟着更改 .

      在前面Servlet的学习中,Servlet充当控制器的角色, 接收用户的请求 , 并调用实现业务逻辑的JavaBean (充当模型角色)  , 然后由Servlet将执行结构返回给 JSP视图 .

 

         MVC框架实现的核心是控制器 . 我们的控制器Controller类基于 Servlet技术实现 , 在配置Servlet访问路径时可以配成 *.do  ,表示只要是以  ". do " 结束的请求就会派发到 Controller .

         <servlet-mapping>

                 <servlet-name> MyController</servlet-name>

                 <url-pattern>*.do</url-pattern>

          </servlet-mapping>

 

     所有以 .do 结尾的请求全部派发到Controller处理  ;  Action接口和Controller接口构成了自定义框架的MVC部分.

     

 

<action> 节点下的<forward> 子节点定义了该Action 可能转发到的页面,对应每一个页面有一个"逻辑名",在Action代码中, 我们只通过这个逻辑名引用将要转发到的页面, 也就是说Action是负责决定跳转到哪一个JSP页面来显示结果 .
Struts
不允许直接在Action中引用页面的物理名. 通过这种方式, 在编写Action代码时 , 视图组件被抽象化了,
我们甚至可以仅仅通过修改配置文件就可以将整个站点在不同视图间切换,
, 而不需要修改任何程序代码. 这就是Struts的设计目标和强大威力 .

                        小结
    使用Struts开发前需要将Struts加入到项目中,. 开发一个项目的时候,首先创建对应的Actin Bean 和 Form Bean , 在struts-config.xml中进行配置,
 这时就有了实现这个功能的框架代码, 然后在Action 的 execute 方法中编码, 通过Form Bean 得到页面提交的参数 , 调用业务逻辑方法(模型方法), 接着将业务逻辑
执行结果保存在 request 对象的attribute 属性中, 在选择返回到相应的页面。


                                                                    

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值