zoukankan      html  css  js  c++  java
  • 有关MVC的相关知识(一)

    1、MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,

    一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,

    在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传

    统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。

    2、MVC编程模式编辑

    MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:[1]
    • Model(模型)表示应用程序核心(比如数据库记录列表)。
    • View(视图)显示数据(数据库记录)。
    • Controller(控制器)处理输入(写入数据库记录)。
    MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。
    Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。
      通常模型对象负责在数据库中存取数据。
    View(视图)是应用程序中处理数据显示的部分。
      通常视图是依据模型数据创建的。
    Controller(控制器)是应用程序中处理用户交互的部分。
      通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。
     
     

    3、MVC设计模式的扩展

      通过在ASP.NET中的MVC模式编写的,具有极其良好的可扩展性。它可以轻松实现以下功能:

      ①实现一个模型的多个视图;

      ②采用多个控制器;

      ③当模型改变时,所有视图将自动刷新;

      ④所有的控制器将相互独立工作。

     
    4、收集例子代码:
     1 <?php 
     2 /** 
     3 * 一个用来访问MySQL的类 
     4 * 仅仅实现演示所需的基本功能,没有容错等 
     5 * 代码未作修改,只是把注释翻译一下,加了点自己的体会 
     6 */
     7 class DataAccess { 
     8 var $db; //用于存储数据库连接 
     9 var $query; //用于存储查询源 
    10 //! 构造函数. 
    11 /** 
    12 * 创建一个新的DataAccess对象 
    13 * @param $host 数据库服务器名称 
    14 * @param $user 数据库服务器用户名 
    15 * @param $pass 密码 
    16 * @param $db 数据库名称 
    17 */
    18 function __construct($host,$user,$pass,$db) { 
    19 $this->db=mysql_pconnect($host,$user,$pass); //连接数据库服务器 
    20 mysql_select_db($db,$this->db); //选择所需数据库 
    21 //特别注意$db和$this->db的区别 
    22 //前者是构造函数参数 
    23 //后者是类的数据成员 
    24 } 
    25 //! 执行SQL语句 
    26 /** 
    27 * 执行SQL语句,获取一个查询源并存储在数据成员$query中 
    28 * @param $sql 被执行的SQL语句字符串 
    29 * @return void 
    30 */
    31 function fetch($sql) { 
    32 $this->query=mysql_unbuffered_query($sql,$this->db); // Perform query here 
    33 } 
    34 //! 获取一条记录 
    35 /** 
    36 * 以数组形式返回查询结果的一行记录,通过循环调用该函数可遍历全部记录 
    37 * @return mixed 
    38 */
    39 function getRow () { 
    40 if ( $row=mysql_fetch_array($this->query,MYSQL_ASSOC) ) 
    41 //MYSQL_ASSOC参数决定了数组键名用字段名表示 
    42 return $row; 
    43 else
    44 return false; 
    45 } 
    46 } 
    47 ?>

    ~~~~~~~~~待续。。。。
     
     
  • 相关阅读:
    spring管理hibernate,mybatis,一级缓存失效原因
    The constructor ClassPathXmlApplicationContext(String) refers to the missing type BeansException
    idea中Hibernate错误:无法解析表
    使用Dom4解析xml
    关于idea中新建web项目 webapp文件夹没有小蓝点 ,启动服务,访问不到解决方案
    解决VS编译太慢问题
    Entity FrameWork6 Code First带virtual关键字外键 Asp.Net WebApi无法返回实体类数据问题
    webapi请求返回{"$id":"1","Message":"请求的资源不支持 http 方法“GET”。"}
    WPF的BusyIndicator控件只显示遮罩层,不显示提示层问题
    [转]Mysql将数据分组后取出时间最近的数据
  • 原文地址:https://www.cnblogs.com/Duqinqin/p/3746488.html
Copyright © 2011-2022 走看看