新书速览|ASP.NET MVC高效构建Web应用

news2025/6/1 12:47:58

《ASP.NET MVC高效构建Web应用》

本书内容

《ASP.NET MVC高效构建Web应用》以目前流行的ASP.NET MVC 5、HTML和Razor为主线,全面系统地介绍ASP.NET MVC Web应用开发的方法,配套提供实例源码、PPT课件与作者一对一QQ答疑服务。

《ASP.NET MVC高效构建Web应用》共13章,内容包括ASP.NET与框架概述、搭建Web开发环境、ASP.NET MVC编程基础、Razoar语法基础、HTML辅助器、LINQ的基本使用、数据库快速开发工具Entity Framework、服务端数据注解和验证、模型模板、前端验证、安全与身份验证、音乐唱片管理系统开发实战、一百书店系统开发实战。

本书作者

朱文伟,名校计算机专业统招硕士,20多年C\C++、Java开发经验。主导开发过密码、图形、人工智能等产品。精通Linux、Windows系统开发及数据库开发技术。著有图书《Linux C与C++一线开发实践(第2版)》

《Rust编程与项目实战》《嵌入式Linux驱动开发实践》《高性能Linux网络编程核心技术揭秘》《Linux C/C++服务器开发实践》《Qt 6.x从入门到精通》《PyQt 5从入门到精通》《Linux C与C++ 一线开发实践》《Visual C++2017从入门到精通》《Windows C/C++加密解密实战》《密码学原理与Java实现》《OpenCV 4.5计算机视觉开发实战(基于VC++)》《OpenCV 4.5计算机视觉开发实战:基于Python》。

本书读者

《ASP.NET MVC高效构建Web应用》既适合ASP.NET MVC Web应用开发初学者和Web应用开发人员,也适合高等院校或高职高专院校Web应用开发课程的学生。

本书目录

第 1 章  ASP.NET框架概述 1

1.1  C/S架构和B/S架构 1

1.2  网站开发概述 2

1.2.1  ASP.NET网站的运行原理 2

1.2.2  ASP.NET的服务器 2

1.2.3  网站开发所需技能 3

1.3  ASP.NET概述 3

1.3.1  ASP.NET的概念 4

1.3.2  ASP.NET的优势 4

1.3.3  ASP.NET的主流开发方式 5

1.4  ASP.NET Core概述 5

1.4.1  ASP.NET Core的优点 5

1.4.2  ASP.NET Core和ASP.NET 4.x的比较 6

1.5  C#语言概述 6

1.6  .NET Framework框架 7

1.7  HTTP与HTML 8

1.7.1  TCP/IP通信传输流 8

1.7.2  HTTP 8

1.7.3  HTML 10

1.8  框架 11

1.8.1  为什么要使用框架 11

1.8.2  Web框架基础技术 11

1.8.3  分清框架和库 11

1.8.4  Web开发框架技术 12

1.9  常见Web框架 12

1.9.1  MVC框架模式 12

1.9.2  MVP框架模式 13

1.9.3  MVVM框架模式 14

1.9.4  Web框架的发展现状 14

第 2 章  搭建Web开发环境 16

2.1  下载和安装Visual Studio 16

2.2  第一个ASP.NET项目 19

2.3  生成和调试程序 24

2.3.1  为何要用生成 24

2.3.2  增加工具栏按钮 26

2.3.3  单步调试ASP.NET项目 27

2.4  简要剖析项目 30

第 3 章  ASP.NET MVC编程基础 34

3.1  MVC概述 34

3.1.1  基本概念 34

3.1.2  MVC执行顺序 35

3.1.3  ASP.NET MVC和传统ASP.NET的比较 35

3.1.4  ASP.NET MVC和WebForm的比较 35

3.2  添加新控制器 36

3.2.1  新建项目并添加控制器源文件 36

3.2.2  基于路由为方法增加一个参数 38

3.2.3  基于路由为方法增加多个参数 39

3.2.4  不改变路由为方法增加多个参数 41

3.3  添加视图 42

3.3.1  新建项目并添加视图文件 42

3.3.2  更改视图和布局页面 44

3.3.3  更改视图标题 45

3.3.4  将数据从控制器传递给视图 46

3.4  添加模型 47

3.4.1  模型的实现方式 47

3.4.2  新建项目并添加类 48

3.4.3  ViewData方式传递数据到视图 49

3.4.4  ViewBag方式传递数据到视图 50

3.4.5  通过返回View传递数据到视图 51

3.4.6  TempData方式传递数据到视图 54

3.5  模型绑定基础 55

3.5.1  基本概念 55

3.5.2  模型绑定的过程 56

3.5.3  模型绑定的作用 56

3.5.4  模型绑定的默认数据源 56

3.5.5  模型绑定的自定义数据源 57

3.5.6  简单类型的模型绑定 58

3.5.7  复杂类型的模型绑定 58

第 4 章  Razor语法基础 61

4.1  概述 61

4.1.1  运行原理 62

4.1.2  第一个Razor范例 62

4.2  代码块 63

4.2.1  Razor的注释 63

4.2.2  关键字 63

4.2.3  输出字符@和电子邮件 63

4.2.4  隐式表达式 64

4.2.5  显式表达式 65

4.2.6  表达式编码 65

4.2.7  Razor代码块 66

4.2.8  隐式转换 67

4.2.9  显式分隔转换 67

4.2.10  以“@:”符号显式行转换 67

4.2.11  条件属性呈现 68

4.2.12  条件语句 68

4.2.13  循环语句 69

4.3  指令块 71

4.3.1  @function指令定义方法 71

4.3.2  @using指令引入命名空间 72

4.3.3  @model指令指定对象类型 73

4.3.4  布局类指令 73

4.4  异常处理 73

第 5 章  HTML辅助器 76

5.1  HtmlHelper简介 76

5.2  辅助器的分类 77

5.3  工作原理 77

5.4  弱类型HtmlHelper 78

5.4.1  准备试验环境 78

5.4.2  ActionLink链接 80

5.4.3  RouteLink链接 82

5.4.4  TextBox输入框 82

5.4.5  Hidden隐藏域 82

5.4.6  Password密码输入框 83

5.4.7  CheckBox复选框 83

5.4.8  RadioButton单选按钮 83

5.4.9  DropDownList下拉菜单 84

5.4.10  ListBox多选框 84

5.4.11  添加属性 85

5.4.12  Form表单 85

5.4.13  使用TagBuilder创建自定义标签 88

5.5  强类型HtmlHelper 89

5.5.1  强类型HtmlHelper方法 89

5.5.2  LabelFor数据标签 91

5.5.3  DisplayFor与EditorFor显示和编辑Model数据 92

5.6  支架辅助器 93

第 6 章  LINQ的基本使用 99

6.1  基本概念 99

6.2  LINQ提供的程序 99

6.3  LINQ所使用的语法 100

6.3.1  查询表达式语法 100

6.3.2  方法语法 101

6.4  查询表达式语法的使用 101

6.4.1  from-in-select的简单使用 101

6.4.2  使用select的匿名类型形式 104

6.4.3  where子句 106

6.4.4  group…by子句 108

6.4.5  orderby子句 109

6.5  委托 110

6.5.1  委托的基本概念 110

6.5.2  声明委托 111

6.5.3  通过命名方法使用委托 111

6.5.4  通过delegate关键字使用委托 114

6.5.5  通过Lambda表达式使用委托 115

6.5.6  多播委托 117

6.5.7  深入研究委托的“+=”和“-=” 119

6.5.8  内置委托 120

6.6  Expression表达式树 124

6.6.1  表达式树是什么 124

6.6.2  表达式树基类Expression 125

6.6.3  常用的表达式类型 127

6.6.4  Expression<TDelegate>类 129

6.7  方法调用语法 132

6.7.1  过滤元素的Where方法 132

6.7.2  选取元素的Select和SelectMany方法 136

6.7.3  排序元素的OrderBy方法 138

6.7.4  元素分组的GroupBy方法 140

6.7.5  元素分组的ToLookup方法 140

6.7.6  延迟查询 141

第 7 章  数据库快速开发工具Entity Framework 144

7.1  Entity Framework概述 144

7.1.1  ORM是什么 144

7.1.2  什么是Entity Framework 145

7.1.3  EF的优缺点 146

7.1.4  EF的适用场合 147

7.1.5  EF的组成结构 147

7.1.6  EF相对于ADO.NET的区别和优点 148

7.1.7  EF的3种开发方式 148

7.2  常用数据库的准备 149

7.2.1  准备LocalDB 150

7.2.2  下载和安装MySQL 153

7.2.3  登录和使用MySQL 155

7.2.4  关闭MySQL的SSL 157

7.2.5  让Visual Studio连接到MySQL 159

7.2.6  卸载MySQL 160

7.2.7  传统方式访问MySQL数据库 161

7.3  基础知识的准备 163

7.3.1  实体之间的关系 163

7.3.2  主键 164

7.3.3  外键 164

7.3.4  外键约束 165

7.3.5  HTTP中POST提交数据的4种方式 165

7.3.6  TryUpdateModel更新model 168

7.3.7  MVC中的RedirectToAction 170

7.4  Code First开发基础 170

7.4.1  实体类及其属性 171

7.4.2  导航属性的概念 173

7.4.3  EF中的关系 173

7.4.4  约定、外键和导航属性 174

7.4.5  实体的类型 179

7.4.6  实体对象的状态 180

7.4.7  数据库上下文基类DbContext 181

7.4.8  数据集类DbSet 184

7.4.9  不通过配置文件创建数据库 185

7.4.10  数据库连接字符串 190

7.4.11  常用数据库的连接字符串范例 195

7.4.12  通过配置文件创建数据库 202

7.4.13  基于EF的增、删、改、查操作 205

7.5  基于Code First的Web案例 213

7.5.1  创建Entity Framework数据模型 213

7.5.2  查看并操作数据库实验 222

7.5.3  实现基本的CRUD功能 225

7.5.4  排序、筛选和分页 237

7.5.5  完善“关于”页 244

7.6  Database First开发基础 246

7.6.1  准备数据库 246

7.6.2  Database First模式的数据库应用开发 248

7.7  Model First开发基础 257

第 8 章  服务端数据注解和验证 269

8.1  概述 269

8.1.1  为何要验证用户输入 269

8.1.2  数据注解及其分类 270

8.2  内置验证注解 270

8.2.1  Required非空验证 271

8.2.2  StringLength字符串长度验证 273

8.2.3  RegularExpression正则表达式验证 274

8.2.4  Range数值范围验证 275

8.2.5  Compare特性 277

8.2.6  Remote远程服务器验证 277

8.3  显示性注解 283

8.3.1  DisplayName显示属性名称 283

8.3.2  DisplayFormat设置显示格式 285

8.3.3  ReadOnly设置只读 286

8.3.4  HiddenInput隐藏属性 290

8.3.5  ScaffoldColumn彻底不显示属性 292

8.3.6  分部视图 295

8.3.7  UIHint定制属性显示方式 301

8.4  其他注解 303

8.4.1  DataType提供属性特定信息 303

8.4.2  映射相关的数据注解NotMapped 304

8.4.3  自定义校验特性 305

第 9 章  模型模板 308

9.1  模型元数据 308

9.1.1  元数据 308

9.1.2  模型元数据介绍 309

9.1.3  Model与View的使用关系 309

9.1.4  元数据驱动设计 310

9.1.5  元数据的层次结构 311

9.1.6  模型元数据的作用 312

9.1.7  自定义模板 312

9.2  预定义模板 314

9.2.1  EmailAddress模板 314

9.2.2  HiddenInput模板 315

9.2.3  Html模板 316

9.2.4  Text与String模板 317

9.2.5  Url模板 318

9.2.6  MultilineText模板 319

9.2.7  Password模板 319

9.2.8  Decimal模板 320

9.2.9  Collection模板 321

第 10 章  前端验证 323

10.1  基于HTML的客户端验证 324

10.2  基于jQuery Validation Unobtrusive的客户端验证 326

10.2.1  基本概念 326

10.2.2  优点 326

10.2.3  开启或关闭客户端验证 327

10.2.4  使用jQuery Validation Unobtrusive的基本步骤 327

10.2.5  基本验证规则 328

10.2.6  data-val-required和[Required]特性的区别 330

10.2.7  复杂一点的规则 330

第 11 章  安全与身份验证 334

11.1  概述 334

11.1.1  ASP.NET MVC提供的安全特性 334

11.1.2  身份验证和授权 335

11.1.3  ASP.NET MVC中的用户身份验证和授权 335

11.1.4  授权 336

11.1.5  角色管理 336

11.1.6  用户管理 336

11.1.7  记录用户的验证状态 337

11.1.8  命名空间System.Web.Security 337

11.2  会话 338

11.2.1  基本概念 338

11.2.2  工作原理 340

11.2.3  使用会话的优势 340

11.2.4  会话的应用场景 341

11.3  ASP.NET内置对象 342

11.3.1  基本概念 342

11.3.2  使用内置对象的途径 343

11.3.3  Response对象 343

11.4  Request对象 348

11.4.1  Server对象 351

11.4.2  Session对象 353

11.4.3  Application对象 355

11.5  Cookie 356

11.5.1  基本概念 356

11.5.2  工作原理 357

11.5.3  Cookie的分类 358

11.5.4  Session和Cookie比较 358

11.5.5  Cookie的作用 359

11.5.6  Cookie类HttpCookie 359

11.5.7  管理Cookie 360

11.6  用户凭证管理框架 362

11.6.1  概述 362

11.6.2  成员资格类Membership 363

11.6.3  CreateUser创建用户 367

11.6.4  ValidateUser验证用户 369

11.7  表单身份验证 369

11.7.1  验证类型 369

11.7.2  基本概念 370

11.7.3  启用表单验证 371

11.7.4  表单验证类FormsAuthentication 372

11.7.5  登录流程 375

11.7.6  判断用户是否登录 376

11.7.7  FormsAuthenticationTicket创建登录票据 377

11.7.8  SetAuthCookie创建票据并保存到Cookie 380

11.7.9  IPrincipal和IIdentity 381

11.7.10  类Membership与类FormsAuthentication的功能区别 381

11.8  操作方法的过滤访问 381

11.8.1  Authorize授权过滤器 381

11.8.2  匿名访问控制器方法 406

11.8.3  HandleError异常过滤器 409

11.8.4  ActionFilter自定义过滤器 411

11.9  缓存和授权 412

第 12 章  音乐唱片管理系统开发实战 416

12.1  新建项目 416

12.2  添加控制器 416

12.2.1  使用HomeController 417

12.2.2  添加StoreController 417

12.3  视图和ViewModel 420

12.3.1  修改视图模板 420

12.3.2  对常见网站元素使用布局 421

12.3.3  更新StyleSheet 422

12.3.4  添加流派和专辑模型类 423

12.3.5  使用模型将信息传递给视图 424

12.3.6  在页面之间添加链接 427

12.4  模型和数据访问 428

12.4.1  使用Code First模式访问数据库 429

12.4.2  添加艺术家模型类 429

12.4.3  更新专辑和流派模型类 429

12.4.4  创建连接字符串 430

12.4.5  准备安装Entity Framework 430

12.4.6  安装SQL Server Compact驱动 431

12.4.7  添加上下文类 431

12.4.8  添加商品种子数据 431

12.4.9  查询数据库 433

12.4.10  更新浏览页面 434

12.5  商品管理 438

12.5.1  创建StoreManagerController 439

12.5.2  修改Index视图和动作 440

12.5.3  了解应用商店管理器 443

12.5.4  查看商店管理器的控制器类 443

12.5.5  查看商店管理器Index方法 444

12.5.6  查看详细信息操作 444

12.5.7  创建操作 444

12.5.8  编辑操作 449

12.5.9  删除操作 451

12.5.10  使用HTML帮助程序截断文本 452

12.5.11  使用数据注解进行模型验证 453

第 13 章  一百书店系统开发实战 456

13.1  系统设计 456

13.2  用户管理 457

13.2.1  添加用户模型类 457

13.2.2  添加角色模型类 458

13.2.3  安装Entity Framework 459

13.2.4  创建数据库上下文类 459

13.2.5  准备生成数据库 461

13.2.6  添加Users控制器 462

13.2.7  新增用户管理链接 464

13.2.8  完善创建用户功能 464

13.2.9  完善编辑功能 465

13.2.10  细节和删除功能 466

13.3  图书管理 466

13.3.1  添加用户模型类 466

13.3.2  添加图书类别 467

13.3.3  在数据库上下文类中添加数据集成员 467

13.3.4  添加Books控制器 467

13.3.5  添加样本数据并删除数据库 468

13.3.6  首页新增图书管理链接并运行 469

13.3.7  实现图书管理的搜索功能 470

13.4  实现首页列表区 471

13.4.1  实现视图 472

13.4.2  实现动作方法 474

13.4.3  准备运行查看首页列表区 475

13.5  实现首页类别区 475

13.5.1  实现视图 475

13.5.2  实现动作方法 476

13.5.3  测试首页类别查询功能 476

13.6  实现搜索功能 477

13.6.1  实现视图 477

13.6.2  实现动作方法 477

13.6.3  测试首页搜索功能 478

13.7  注册、登录和注销 478

13.7.1  首页增加登录链接 479

13.7.2  添加GET方式的Login方法 479

13.7.3  添加Login视图 479

13.7.4  添加GET方式的注册 480

13.7.5  添加Register视图 480

13.7.6  添加POST方式的注册 480

13.7.7  开启表单验证 480

13.7.8  添加POST方式的Login方法 481

13.7.9  添加注销方法 482

13.7.10  不同角色显示不同视图 482

13.7.11  此时注册、登录和注销 483

13.8  购物车 484

13.8.1  添加购物车商品模型类 484

13.8.2  在数据库上下文类中添加数据集成员 485

13.8.3  添加购物车商品控制器 485

13.8.4  实现购物车Index视图 485

13.8.5  实现购物车的角色访问控制 487

13.8.6  添加“插入商品到购物车”方法 488

13.8.7  增加、减少和删除 490

13.8.8  购物车结算产生订单 491

13.9  订单处理 495

13.9.1  买家查看订单 496

13.9.2  买家付款 499

13.9.3  管理员发货 500

13.9.4  买家确认收货 501

13.9.5  取消订单 501

13.9.6  删除订单 501

13.9.7  评价订单 502

13.10  一些收尾工作 505

13.10.1  个人信息中心 505

13.10.2  更新关于和联系方式 506

13.10.3  美化顶部横幅 506

本书特色

(1)系统介绍ASP.NET MVC 5 Web应用程序开发的方法,知识点覆盖全面,信息量大,例子丰富,讲解细致,重点突出,适合初学者快速入门。

(2)范例和案例非常完整,尤其是最后两章音乐唱片管理系统和一百书店系统实战案例,完整重现Web应用开发过程,可以用于毕业设计或Web工程师完成项目的开发模板,很有参考价值。

(3)配套全书实例源码、PPT课件与作者一对一QQ答疑服务。

本文摘自《ASP.NET MVC高效构建Web应用》,获出版社和作者授权发布。

ASP.NET MVC高效构建Web应用——jdhttps://item.jd.com/10158057210352.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2386839.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL 9.3 超详细下载安装教程(Windows版)附图文说明

MySQL 9.3 超详细下载安装教程&#xff08;Windows版&#xff09;附图文说明 &#x1f4a1; 本文适用于Windows 10/11系统&#xff0c;包含完整的安装流程、环境配置和疑难解答。建议收藏备用&#xff01; 一、下载MySQL 1. 访问官网 进入MySQL官方下载页面&#xff1a;http…

Linux之软件包管理器(CentOS系统) —— yum

目录 一、软件包管理器 1-1什么是软件包 1-2 Linux软件生态 Linux下载软件的过程(Ubuntu、Centos、other) 操作系统的好坏评估---生态问题 1. 应用软件生态 2. 硬件兼容性 3. 开发者社区与开源生态 4. 商业合作与盈利模式 5. 用户粘性与使用习惯 6. 安全与合规生态 …

webpack吐环境分析

需要解决的问题 扣取下来的webpack文件过大 解决思路 用ast将需要的代码扣下来 结果展示 实现步骤 第一步&#xff1a;我们得知道需要哪些模块 在入口处&#xff0c;增加模块记录 第二步&#xff0c;分析ast代码 通过分析发现,key 有三种值 分别为NumbericLiteral、StringLi…

Unity InputField 滑动滚轮 实现对文本的滚动

一。效果演示&#xff1a; 二。实现原理&#xff1a; 创建一个脚本KeInputScroll.cs 继承InputField类和IScrollHandler接口。如下面代码所示&#xff1a; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI;public class KeInputScroll : InputFiel…

机械设计插件

在进行机械设计的时候&#xff0c;很多厂家对我们开放了外购件的模型&#xff0c;方便我们进行设计选购&#xff0c;但是尽管如此&#xff0c;我们在使用的时候还是很麻烦&#xff0c;我目前使用的是Part data manager来管理这些厂家的模型&#xff0c;使用方法非常简单。 首先…

RabbitMQ核心机制——延迟队列

一、 什么是延迟队列&#xff1f; 消息发送之后&#xff0c;不想让消费者马上收到消息&#xff0c;而是等待特定时间后消费者才能拿到这条消息进行消费。 二、 如何实现延迟队列 RabbitMQ并没有直接支持延迟队列这一功能&#xff0c;如果需要实现延迟队列&#xff0c;有两种方法…

华为云Flexus+DeepSeek征文|Flexus云服务器Dify-LLM资源部署极致体验Agent

前引&#xff1a;重磅来袭&#xff01;本次以DeepSeek-V3/R1商用大模型和Dify-LLM应用平台一键部署为核心&#xff0c;专为新手打造“开箱即用”的AI开发体验。无论你是想快速搭建企业级AI应用&#xff0c;还是探索大模型落地的无限可能&#xff0c;只需跟随小编实现三步走&…

【Elasticsearch入门到落地】13、DSL查询详解:分类、语法与实战场景

接上篇《12、索引库删除判断以及文档增删改查》 上一篇我们讲解了如何判断索引库是否存在并删除它&#xff0c;以及如何对索引库中的文档进行增删改查操作。本篇我们进入ElasticSearch的DSL语法的详解。 Elasticsearch&#xff08;ES&#xff09;作为强大的分布式搜索引擎&…

[欠拟合过拟合]机器学习-part10

7.欠拟合过拟合 7.1欠拟合 欠拟合是指模型在训练数据上表现不佳&#xff0c;同时在新的未见过的数据上也表现不佳。这通常发生在模型过于简单&#xff0c;或者是训练的次数不够&#xff0c;无法捕捉数据中的复杂模式时。欠拟合模型的表现特征如下&#xff1a; 训练误差较高。 …

【windwos】文本编辑器Notepad++ 替代品Notepad--

一、N和N--对比介绍 曾经备受推崇的「Notepad」曾是Windows上的经典代码编辑器。然而&#xff0c;作者的一些政治言论已经让它被广大中国用户抛弃。 一个名为「Notepad--」的新编辑器&#xff0c;也是开源免费&#xff0c;功能和实用性也在尽可能接近。与此同时&#xff0c;「N…

Linux基本指令篇 —— clear指令

clear 是 Linux 和 Unix 系统中用于清空终端屏幕的常用命令。它的作用是移除当前终端窗口中的所有可见内容&#xff0c;提供一个干净的界面&#xff0c;类似于“刷新”终端。以下是关于 clear 的详细解析&#xff1a; 目录 1. 基本用法 2. 实现原理 3. 常见场景 场景 1&…

阿里云DDoS防护:万一被“黑”了,如何更换IP地址?

阿里云DDoS防护&#xff1a;万一被“黑”了&#xff0c;如何更换IP地址“绝地反击”&#xff1f; 各位站长、运维老铁、业务负责人们&#xff0c;大家好&#xff01;在如今这个网络世界&#xff0c;最让人提心吊胆的&#xff0c;莫过于遭遇**DDoS攻击&#xff08;分布式拒绝服…

【小白量化智能体】应用2:编写通达信绘图指标及生成Python绘图程序

【小白量化智能体】应用2&#xff1a;编写通达信绘图指标及生成Python绘图程序 【小白量化智能体】是指能够自主或半自主地通过与环境的交互来实现目标或任务的计算实体。智能体技术是一个百科全书&#xff0c;又融合了人工智能、计算机科学、心理学和经济学等多个领域的知识&a…

C++23 std::start_lifetime_as:用于隐式生存期类型的显式生存期管理函数 (P2590R2)

文章目录 一、C23简介二、std::start_lifetime_as 基本概念函数原型模板参数参数返回值注意事项示例代码 三、std::start_lifetime_as 的作用1. 避免复杂的拷贝操作2. 保持对象表示不变3. 简化代码逻辑 四、std::start_lifetime_as 的使用场景1. 内存池管理2. 类型双关&#xf…

Innodb底层原理与Mysql日志机制深入刨析

MySQL的内部组件结构 大体来说,MySQL 可以分为 Server 层和存储引擎层两部分。 Server层 主要包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实…

JMeter-SSE响应数据自动化

结构图 背景&#xff1a; 需要写一个JMeter脚本来进行自动化测试&#xff0c;主要是通过接口调用一些东西&#xff0c;同时要对响应的数据进行处理&#xff0c;包括不限于错误信息的输出。 1.SSE(摘录) SSE&#xff08;Server-Sent Events&#xff09;是一种基于HTTP协议、允许…

泛型(1)

1.泛型的理解和好处 使用传统方法的问题分析 (1)不能对加入到集合ArrayList中的数据类型进行约束 (2)遍历的时候,需要进行类型装换,如果集合中的数量较大,对效率有影响. 使用泛型的好处 (1)使用泛型添加 (检查元素的类型,提高了安全性.) (2)减少了类型转换的次数,提高效率…

esp8266 点灯科技远程控制继电器

手机端安装点灯科技app 打开 Arduino IDE 编辑&#xff1a; #define BLINKER_WIFI #include <Blinker.h> char auth[] "点灯科技 key"; char ssid[] "wifi ID"; char pswd[] "WiFi key"; // 新建组件对象 BlinkerButton Button1(&q…

MMA: Multi-Modal Adapter for Vision-Language Models论文解读

abstract 预训练视觉语言模型&#xff08;VLMs&#xff09;已成为各种下游任务中迁移学习的优秀基础模型。然而&#xff0c;针对少样本泛化任务对VLMs进行微调时&#xff0c;面临着“判别性—泛化性”困境&#xff0c;即需要保留通用知识&#xff0c;同时对任务特定知识进行微…

使用 Cannonballs 进行实用导体粗糙度建模

在 GB/s 制度下&#xff0c;导体损耗的精确建模是高速串行链路设计成功的前提。未能对粗糙度效果进行建模可能会毁了您的一天。例如&#xff0c;图 1 显示了与测量数据相比&#xff0c;无粗糙度的 40 英寸印刷电路板 &#xff08;PCB&#xff09; 走线的模拟总损耗。总损耗是电…