From 4553cfd575ea76c4cddfa2d3f7a885a888f1280d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E4=BD=B3=E9=A2=96?= <3572749703@qq.com> Date: Wed, 27 Nov 2024 13:44:16 +0800 Subject: [PATCH 1/2] 11.22 --- ...22\346\216\247\345\210\266\345\231\250.md" | 82 +++++++++++++++++++ 1 file changed, 82 insertions(+) diff --git "a/\345\220\264\344\275\263\351\242\226/2024.11.22\346\216\247\345\210\266\345\231\250.md" "b/\345\220\264\344\275\263\351\242\226/2024.11.22\346\216\247\345\210\266\345\231\250.md" index 8843707..0cace60 100644 --- "a/\345\220\264\344\275\263\351\242\226/2024.11.22\346\216\247\345\210\266\345\231\250.md" +++ "b/\345\220\264\344\275\263\351\242\226/2024.11.22\346\216\247\345\210\266\345\231\250.md" @@ -1,3 +1,85 @@ +1. **控制器的定义和作用**: + 控制器是MVC架构中的一个核心组件,主要负责处理用户的输入,调用模型层的数据操作,并最终选择合适的视图来展示结果。控制器作为模型和视图之间的协调者,确保二者的有效沟通和协调。 + +2. **控制器的实现方式**: + - **实现IController接口**:在.NET中,控制器类必须实现`System.Web.Mvc`命名空间下的`IController`接口。这种方式提供了高度的可扩展性,但编写复杂应用程序较为困难。 + - **继承Controller类**:大多数Web开发人员更熟悉的是继承自`System.Web.Mvc.Controller`类的控制器。这个基类提供了动作方法(Action Method)、动作结果(Action Result)等关键特性,简化了请求处理。 + +3. **控制器对数据的接收**: + 控制器可以通过多种方式接收数据,包括查询字符串值、表单数据和路由数据。这些数据可以通过上下文对象获取,作为动作方法的参数传递,或通过模型绑定功能明确调用。 + +4. **控制器对数据的响应**: + 控制器响应用户请求后,可以返回多种类型的动作结果,包括渲染视图、重定向到不同的URL或动作方法、返回文本数据、XML数据、JSON数据、文件和二进制数据,以及返回错误和HTTP状态码。 + +5. **控制器与视图的关系**: + 控制器负责根据业务逻辑的结果选择合适的视图进行渲染。视图是用户界面的呈现部分,负责展示数据给用户,并接收用户的输入。 + +6. **路径映射和视图指向**: + 控制器作为一个“黑盒”,需要完成入口路由(路径映射)和出口路由(视图指向)。路径映射根据配置的规则和请求URI的路径找到具体的控制器逻辑;视图指向根据配置的规则和控制器处理完毕后返回的信息找到需要渲染的视图页面。 + +7. **控制器的优点**: + - **模块化和可维护性**:MVC架构将系统分为独立的模型、视图和控制器部分,每个部分都有明确的职责,使得代码更加清晰,易于维护和扩展。 + - **重用性**:模型可以独立于用户界面,可以在不同的视图和控制器之间共享和重用。 + - **并行开发**:由于关注点分离,开发人员可以并行开发模型、视图和控制器,提高开发效率。 + +8. **控制器的缺点**: + - **学习曲线**:对于新手开发者来说,MVC架构可能需要一定的学习曲线来理解各个组件如何协同工作。 + - **复杂性**:在大型项目中,管理多个模型、视图和控制器之间的关系可能会变得困难,增加了项目的复杂性。 + +# Linux练习 +1. 使用以下几种方式分别登录服务器,说明它们分别的注意事项,并说明它们之间的区别 + +答: + +**ssh** +SSH是一种网络协议,用于加密方式远程登录到服务器。 +确保服务器的 SSH 服务正在运行。 +知道服务器的 IP 地址或域名以及 SSH 端口(默认是 22)。 +拥有有效的用户名和密码或 SSH 密钥。 +区别: +基于命令行的工具,适用于自动化脚本和命令行操作。 +支持密钥认证,提供更高级别的安全性。 + +**tabby** +Tabby 是一个图形界面的 SSH 客户端,提供了更直观的操作体验。 +需要在本地机器上安装 Tabby 应用。 +支持 SSH 密钥和密码认证。 +可以保存多个服务器的连接配置,便于快速切换。 +区别: +提供图形用户界面,易于使用,适合不熟悉命令行的用户。 +可能不如命令行工具轻量级。 + +**XShell** +XShell 是一个基于 Web 的 SSH 客户端,允许你通过浏览器远程管理服务器。 +服务器需要运行 XShell 服务。 +通过 Web 浏览器访问,可能涉及额外的安全考虑。 +区别: +通过 Web 浏览器访问,不受操作系统限制。 +可能不如原生 SSH 客户端性能好。 + +**PuTTY** +是一种软件终端仿真器,允许你通过 SSH 连接到远程服务器。 +通常通过 SSH 客户端内置的 PuTTY 功能来连接。 +需要服务器的 SSH 服务支持。 +区别: +PuTTY 通常作为 SSH 客户端的一部分,而不是独立工具。 + +***总结*** + +SSH 客户端:适用于命令行操作,自动化脚本,安全性高。 +Tabby 应用:图形界面,易于使用,适合初学者。 +XShell:基于 Web 的访问,跨平台,但可能存在安全风险。 +PuTTY:与 SSH 客户端集成,提供终端体验。 +2. 更新软件源,命令:apt update,并了解这一步的实际用处和意义 +答:这个命令会从所有配置的软件源中更新软件包的列表,但不会安装或升级任何软件。这是安装或升级软件之前的重要步骤,因为它确保你拥有最新的软件信息。 +3. 更新软件和补丁,命令:apt upgrade -y,并了解这一步的实际用处意义 +答:这个命令会升级所有可升级的软件包。-y 选项会自动回答 "yes" 到所有提示,这样你不需要手动确认每个升级。 +## mvc练习 + +## 控制器传参 + + # 作业 + ## 部署静态网站no1.starism.cn ## 部署MVC:mvcno1.starism.cn \ No newline at end of file -- Gitee From 5ef337f8def4806c03dead8d09d3088835117bcf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E4=BD=B3=E9=A2=96?= <3572749703@qq.com> Date: Wed, 27 Nov 2024 13:45:34 +0800 Subject: [PATCH 2/2] 11.25 --- ...46\216\247\345\210\266\345\231\250\344\274\240\345\217\202.md" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\345\220\264\344\275\263\351\242\226/2024.11.25\346\216\247\345\210\266\345\231\250\344\274\240\345\217\202.md" diff --git "a/\345\220\264\344\275\263\351\242\226/2024.11.25\346\216\247\345\210\266\345\231\250\344\274\240\345\217\202.md" "b/\345\220\264\344\275\263\351\242\226/2024.11.25\346\216\247\345\210\266\345\231\250\344\274\240\345\217\202.md" new file mode 100644 index 0000000..e69de29 -- Gitee