简介
发表于|更新于|Spring
|总字数:112|阅读时长:1分钟|浏览量:
1 简介
MVC:Model+View+Controller(数据模型+视图+控制器)
三层架构:Presentation tier+Application tier+Data tier(展现层+应用层+数据访问层)
MVC与三层架构不是对应关系。MVC只存在三层架构的展示层。M是数据模型,包含数据对象,叫做Model,用来和V之间进行数据交互和传值。V指的是视图页面,包含JSP、freeMarker、Velocity、Thymeleaf、Tile等;C是控制器。
文章作者: Estom
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Estom的博客!
相关推荐

2022-04-18
web-workers
基础内容什么是 Web Workers 能够把 JavaScript 计算委托给后台线程,通过允许这些活动以防止使交互型事件变得缓慢。 上句话是 MDN 对象 Web Workers 的简单描述。 Web Workers 是可以在后台(页面端)运行的任务,它能够被轻松的创建,还能向它的创建者发送消息。 Web Workers 的三大主要特征:能够长时间运行(响应),理想的启动性能以及理想的内存消耗。 两种 Web WorkersWeb Workers 可以分为两种类型:Dedicated Web Worker(专用线程)和 Shared Web Worker(共享线程)。 a. Dedicated Web Worker目前绝大多数的应用场景所使用的是 Dedicated Web Worker(专用线程)。Dedicated Web Worker随着 HTML 页面关闭而被终止,这就意味着 Dedicated Web Worker 只能被创建它的 HTML 页面所访问。 在 JavaScript 代码中,Work 类型代表 Dedicated Web Worker。 b. Sh...

2021-07-23
1 C++左值右值
左值右值 参考文献 cnblogs.com/sunchaothu/p/11343517.html https://www.zhihu.com/question/363686723/answer/1976488046 为了导入右值和移动语义,首先复习了以下临时对象在函数返回值和传参数时构造了几次;然后对比介绍了左值和右值,以及右值引用的形式和含义。为移动语义和完美转发的介绍做铺垫。 1 问题导入——参数与返回值的角度C++11 引入了 std::move 语义、右值引用、移动构造和完美转发这些特性。 函数返回值是传值的时候发生几次对象构造、几次拷贝? 函数的形参是值传递的时候发生几次对象构造? 函数返回值原理123456789101112131415161718192021222324252627// main.cpp#include <iostream>using namespace std;class A{public: A(){ cout<<"class A co...

2021-04-14
1.3 自定义数据类型
自定义数据类型 自定义类型的变量,一般称为对象。 类类型类型定义包括以下两类成员 数据成员 成员函数 12345678class Data{public: int m; int n; int hello(){ return 1; }} 变量对象定义1Data a,b; 变量对象使用12a.m;a.hello(); 2 结构体类型类型定义12345struct data{ std::string bookNo; unsigned sold = 0; double revenue = 0.0;}; 变量对象定义变量对象使用3 枚举类型类型定义变量对象定义变量对象使用4 联合体类型类型定义变量对象定义变量对象使用

2021-04-08
4.1 责任链
责任链模式意图 使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。 将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它位置。 Avoid coupling the sender of a request to its receiver by giving more than oneobject a chance to handle the request. Chain the receiving objects and pass the request along the chain until an objecthandles it. 结构 一个典型的对象结构可能如下图所示: 参与者 Handler 定义一个处理请求的接口。 实现后继链 ConcreteHandler 处理它所负责的请求。 可访问它的后继者。 如果可处理该请求,就处理;否则将该请求转发给它的后继者。 Client 向链上的具体处理者对象提交请求。 适用性 在以下情况下可以使用 Chain of Responsibility 模式: 有多个对象可以...

2022-11-27
04 Java IO对象
对象操作基本操作序列化序列化就是将一个对象转换成字节序列,方便存储和传输。 序列化:ObjectOutputStream.writeObject() 反序列化:ObjectInputStream.readObject() 不会对静态变量进行序列化,因为序列化只是保存对象的状态,静态变量属于类的状态。 Serializable序列化的类需要实现 Serializable 接口,它只是一个标准,没有任何方法需要实现,但是如果不去实现它的话而进行序列化,会抛出异常。 123456789101112131415161718192021222324252627282930public static void main(String[] args) throws IOException, ClassNotFoundException { A a1 = new A(123, "abc"); String objectFile = "file/a1"; ObjectOutputStream objectOutputStrea...

2020-09-26
index
事件处理Matplotlib支持使用GUI中立事件模型进行事件处理,因此您可以连接到Matplotlib事件,而无需了解Matplotlib最终将插入哪个用户界面。 这有两个好处:你编写的代码将更加可移植,Matplotlib事件就像数据坐标空间和事件发生在哪些轴之类的东西,所以你不必混淆低级转换细节来自画布空间到数据空间。还包括对象拾取示例。
公告
欢迎参观Estom的小屋




