zoukankan      html  css  js  c++  java
  • 疯子在思考之从零说MVC

    这篇主要讲web开发基础,MVC概念的原型会从这里体现。
    首先提一个问题main方法在哪?
    我们学的第一种语言,写hello world时都会写main方法(除脚本语言外),那么我们想一下,我们写web程序时main在哪?
    我们以b/s结构为例,很容易想到main其实有两个,一个在服务器端一个在客户端。那么服务器和客户端的通信走的是socket。通信的内容要有协议,即我们熟悉的http,http请求两个最核心的对象是request和response。那么我们再简单回忆一下web程序的hello world 过程.
    request 发现请求服务器端接收处理后通过response返回给客户端.这是web程序的基本概念.
    下面是httpwatch截图我们可以简单地了解http协议





    到这里我们很容易想到java的servlet。
    学java web开发的还都会了解servlet,那么第二个问题?
    java是OOP语言,我们知道OOP的对象都是需要new出来才能引用的(或者反射)那么new在哪呢?
    我们不难想到new的过程肯定是服务器端?而且是通过反射机制来生成对象,那么每次请求都要new吗?
    答案是否定的,大家都知道servlet是单例多线程而且是线程安全的。这里需要注意一点servlet是不能有成员变量的,注意是成员“变量”。这里可以想到为什么struts2的action要配置成非单例?

    注意这里的概念与以后的struts以及spring mvc概念的基础。struts 1或2和spring MVC跟这里是有区别和联系的。

    其实servlet就是mvc的雏形,通过servlet就可以写一个mvc 的hello world.
    那么为什么会出现MVC?下一篇文章介绍,谢谢关注.
  • 相关阅读:
    购物英语词汇
    生活学习英语词汇
    银行英语词汇
    烹饪英语词汇
    旅游英语词汇
    饮食英语词汇
    书英语词汇
    王元编辑口语资料中国传统之节日
    DataSet在WCF中怎么办?
    Python生成Wav格式文件
  • 原文地址:https://www.cnblogs.com/hiaming/p/8967798.html
Copyright © 2011-2022 走看看