当前位置: 首页 > wzjs >正文

合肥做百度网站前端网站做多语言

合肥做百度网站,前端网站做多语言,检测网站建设,临汾网站开发欢迎来到啾啾的博客🐱。 记录学习点滴。分享工作思考和实用技巧,偶尔也分享一些杂谈💬。 欢迎评论交流,感谢您的阅读😄。 目录 适配器模式Spring MVC的适配器模式 适配器模式 适配器模式(Adapter Pattern&a…

欢迎来到啾啾的博客🐱。
记录学习点滴。分享工作思考和实用技巧,偶尔也分享一些杂谈💬。
欢迎评论交流,感谢您的阅读😄。

目录

  • 适配器模式
  • Spring MVC的适配器模式

适配器模式

![[2_Spring中的适配器模式.png]]

适配器模式(Adapter Pattern)是将一个类的接口转换成客户希望的另一种接口。从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。
一般包含目标角色(Target)、源角色(Adaptee)、适配器角色(Adapter)。
通过继承或关联的方式,由适配器将源角色转换成目标角色。

Spring MVC的适配器模式

在Spring MVC中,当一个请求到达DispatcherServlet后,DispatcherServlet需要找到一个合适的处理器Handler来处理这个请求。
这个处理器可以有多种形式,如@Controller注解类中的方法:

@Controller
public class UserController {@GetMapping("/users/{id}")public String getUser(@PathVariable String id, Model model) {// ... 逻辑 ...return "userView";}
}

这里的 getUser 方法就是一个 Handler。
还有实现了HttpRequestHandler 接口的类:

public class MyHttpRequestHandler implements HttpRequestHandler {@Overridepublic void handleRequest(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {// ... 逻辑 ...response.getWriter().write("Hello from HttpRequestHandler!");}
}

DispatcherServlet希望以统一的方式调用各种类型的 Handler。
DispatcherServlet 本身并不直接知道如何调用 UserController 类的 getUser 方法,或者 MyHttpRequestHandler 类的 handleRequest 方法。这些 Handler 的调用方式、参数解析、返回值处理都千差万别。

这个时候,适配器登场了。Spring MVC定义了一个用户DispatcherServlet期望的目标角色HandlerAdapter接口,HandlerAdapter接口定义了一个DispatcherServlet可以统一调用的标准方法,handle()方法。
被适配的源角色就是上面提到的类型不同的Handler。

但是当我们去翻看源码时,我们发现了一件事情,Spring不止有一个适配器角色。如下:
![[2_Spring中的设计模式-2.png]]

![[2_Spring中的设计模式-1.png]]

这是因为Spring提供了多种HandlerAdapter的实现,每种实现负责适配一种或一类特定的Handler。
RequestMappingHandlerAdapter处理的适配对象为:被@RequestMapping、@GetMapping注解的控制器方法。
HttpRequestHandlerAdapter处理的适配对象为:实现了org.springframework.web.HttpRequestHandler 接口的类的实例。

Spring在适配器模式应用时做了适配职责的分离。
这样的设计和Java在设计类加载机制时相似,更灵活,易于扩展与维护。

![[【Spring】Spring中的适配器模式.png]]

http://www.dtcms.com/wzjs/604455.html

相关文章:

  • 做网站免费服务器哪家好关闭网站后弹窗代码
  • 天津手动网站建设调试为什么wordpress邮件发不出去
  • vue 做pc网站可以吗快捷的赣州网站建设
  • 烟台网站推广排名外贸网站制作方案
  • 企业响应网站免费asp网站模板
  • 网站代码备份东莞企业网站建设方案
  • 开发者导航seo顾问什么职位
  • 做网站效果怎么样个人网站 做啥好
  • 百度网站关键词aspcms上传到虚拟主机后打开网站
  • 忻州网站建设网站推广个人网站空间一般多大
  • 盐城市住房城乡建设网站wordpress 导入图片
  • 连云港做网站制作首选公司3d效果图制作公司
  • 丽水网站建设企业做网站背景图的科技图片
  • wordpress繁体中文最彻底的手机优化软件
  • php技术的网站建设实录方案网站备案要多久
  • 别人做的网站不能用怎么办啊很好的网站建设
  • 网站建设具体详细过程wordpress 镜像下载
  • 网站开发教学文章网站系统设计
  • 中国关于影院建设的网站网站建设公司简介
  • 网站颜色电商运营主要工作内容
  • 仪征建设银行官方网站莱州网监局
  • gta房产网站建设中wordpress常用模板下载
  • 网站开发公司前台模板企业服务网
  • 细谈电商网站外链建设的策略品牌网络营销
  • 公司网站建设合同交印花税吗ios开发入门
  • 石家庄做网站公司汉狮价格小学学校网站模板
  • 网站设计费用多少淘宝关键词挖掘工具
  • 北京知名网站建设公司排名上海网站关键词优化服务
  • 网站建设开发上线流程大数据营销策略有哪些
  • 广告网站模板下载网站建设开发价格怎么算