【熵增教育】自定义MVC框架——熵增学院

自定义MVC框架

  • 实现自定义MVC的体系结构图

https://images2015.cnblogs.com/blog/803693/201609/803693-20160920114523527-633744873.png

1、Model I模式开发Web应用时,分两种情况:

  *纯JSP技术方式开发

  *JSP+JavaBean方式开发

2、Model I模式开发的不足:

  *JSP页面中嵌入大量的Java代码,可读性差。

  *大量代码在JSP中难以复用。

  *后期维护及扩展的难度大。

3、为了克服Model I模式的缺陷,引入了Model II的模式开发 

  *Model II模式体现了基于MVC(Model-View-Controller,模型-视图-控制器)的设计模式,简单的说,Model II模式就是将数据显示、流程控制和业务逻辑处理分离,使之相互独立。 

4、MVC设计模式由3个部分组成各部分的作用。

  *Model:模型,主要用于数据和业务的处理。

  *View:视图,用于数据显示。

  *Controller:控制器,用于流程控制。

5、MVC设计模式的特点

  *一个模型可以对应多个视图。

  *显示与逻辑控制分离。

  *分层控制,减低了代码间的耦合。

  • 我们如何创建一个自己的MVC框架??

(一)我们要在lib里面准备一个夹包

dom4j-1.6.1.jar   主要作用:解析xml文件

(二)准备配置文档(在src下)

<!DOCTYPE myframework[

    <!ELEMENT myframework (actions) >

    <!ELEMENT actions (action*)>

    <!ELEMENT action (result*)>

    <!ATTLIST action name CDATA #REQUIRED

                     class CDATA #REQUIRED

    >

    <!ATTLIST result name CDATA #IMPLIED

                    redirect (true|false) "false"

    >

]>

解释:

https://images2015.cnblogs.com/blog/803693/201609/803693-20160922083847621-1737094974.png

解释:根据上述约束完成的“*”代表该节点可以出现多次

 

<myframework>

        <actions>

            <action name="LoginAction" class="cn.action.LoginAction">

                <result name="success">success.jsp</result>

                <result name="login">login.jsp</result>

            </action>

        </actions>

</myframework>

 

(三)自己准备一个Action接口,用于放入结果集和执行方法

package cn.framework;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

public interface Action {

   public final String SUCCESS = "success";

   public final String ERROR = "error";

   public final String LOGIN = "login";

   public final String INPUT = "input";

   public String execute(HttpServletRequest request,

         HttpServletResponse response);

}

 

(四)定义一个ResultMapping用来存放result节点

package cn.framework;

public class ResultMapping {

  //result节点名字

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值