任务30:RoutingMiddleware介绍以及MVC引入 前面讲到app.Map的方式,它也可以实现路由 当我们的url是task的时候,就会执行里面的context的输出内容 app.Map("/task", taskApp=>{ taskApp.Run(async context=>{ await context.Response.WriteAsync("this is a task...."); }); }); taskapp,这里的appl…
前言 前面我们介绍了使用app.Map来配置路由,但是对于一般不是特别大的项目来说,我们不使用Map来进行路由配置. 配置路由 我们首先需要在Startup.cs文件中的ConfigureServices方法中进行路由依赖注入 services.AddRouting(); 接下来我们就可以在Configure中使用扩展方法进行注册路由 //第一种方式 app.UseRouter(builder=>builder.MapGet("actionfirst",async context…
前言 前面介绍了使用app.Map来配置路由,但是对于一般不是特别大的项目来说,不使用Map来进行路由配置. 配置路由 我们首先需要在Startup.cs文件中的ConfigureServices方法中进行路由依赖注入 services.AddRouting(); 接下来就可以在Configure中使用扩展方法进行注册路由 //第一种方式 app.UseRouter(builder=>builder.MapGet("actionfirst",async context =>…
1-构建路由 public class Startup { // This method gets called by the runtime. Use this method to add services to the container. // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940 public void…
之前在 MWeb 中打开非文档库中的 Markdown 文档,如果文档中有引用到本机图片,是没办法在 MWeb 中显示出来和预览的.这是因为 Apple 规定在 Mac App Store(MAS) 上的软件,都不能对软件自己的沙箱之外的文档进行任何操作,连读取都不能,除非用户明确授权.而用户授权的方式是使用打开.保存对话框.比如说你用 MWeb 打开一个 Markdown 文档,那么 MWeb 就能得到读写这个文档的权限.再比如说你用 MWeb 导出为 HTML 功能,在保存为对话框中选择一个…
前言 前面已经学习了Struts2和Hibernate框架了.接下来学习的是Spring框架-本博文主要是引入Spring框架- Spring介绍 Spring诞生: 创建Spring的目的就是用来替代更加重量级的的企业级Java技术 简化Java的开发 基于POJO轻量级和最小侵入式开发 通过依赖注入和面向接口实现松耦合 基于切面和惯例进行声明式编程 通过切面和模板减少样板式代码 侵入式概念 Spring是一种非侵入式的框架- 侵入式 对于EJB.Struts2等一些传统的框架,通常是要实现特…
限流知识<高可用服务设计之二:Rate limiting 限流与降级> 在微服务架构中,我们将系统拆分成了一个个的服务单元,各单元间通过服务注册与订阅的方式互相依赖.由于每个单元都在不同的进程中运行,依赖通过远程调用的方式执行,这样就有可能因为网络原因或是依赖服务自身问题出现调用故障或延迟,而这些问题会直接导致调用方的对外服务也出现延迟,若此时调用方的请求不断增加,最后就会出现因等待出现故障的依赖方响应而形成任务积压,最终导致自身服务的瘫痪. 举个例子,在一个电商网站中,我们可能会将系统拆分成…
Spring.net两大核心内容: IOC(控制反转) 传统的面相对象思维模式是对象A依赖对象B,对象B的实例化和调用都在对象A中发生,一旦对象B中发生变化,对象A也要随之变化,这样使得程序间行程了紧密的耦合度 IOC是一种编程思想,其理念就是借助于第三方来实现解耦.IOC核心是一个IOC容器,所有对象的控制权全部交给IOC容器,由IOC容器负责创建对象.模式由原来的创建对象--使用对象到被动接收IOC容器创建对象--使用对象,此期间对对象的控制权反生了转变,因此被称为控制反转 DI(依赖注入)…
MVC是web开发中常见的程序结构. 简单的mvc结构如下: view层:显示层. control层:业务层,集合了各种action. model层:模型层,一般和数据打交道.简单的sample:一个表对应一个model类. 其中control层调用model层的方法,实现对数据的访问. 采用这样的结构在一定程度上,可以做到代码清晰,较容易扩展,代码的管理复杂度较低. 但是如果是业务很多,逻辑又很复杂的网站,如果再加上开发人员的水平参差不齐,那必然会导致下面的情况: 1 action中的代码越来…
https://blog.csdn.net/qq_27093465/article/details/62928590 使用slf4j的优点: 提供带参数的日志输出方法(SLF4J 1.7及以后版本).  日志级别 OFF 为最高等级 关闭了日志信息 FATAL 为可能导致应用中止的严重事件错误 ERROR 为严重错误 主要是程序的错误 WARN 为一般警告,比如session丢失 INFO 为一般要显示的信息,比如登录登出 DEBUG 为程序的调试信息 TRACE 为比DEBUG更细粒度的事件信…