Bean的自动装配、SpringMVC

什么是bean的自动装配,有哪些方式?

开启自动装配,只需要在xml配置文件中定义“autowire”属性。

autowire属性有五种装配的方式:

no – 缺省情况下,自动配置是通过“ref”属性手动设定 。

byName-根据bean的属性名称进行自动装配。

byType-根据bean的类型进行自动装配。

constructor-类似byType,不过是应用于构造器的参数。如果一个bean与构造器参数的类型形

同,则进行自动装配,否则导致异常。

autodetect-如果有默认的构造器,则通过constructor方式进行自动装配,否则使用byType方式

进行自动装配。

@Autowired自动装配bean,可以在字段、setter方法、构造函数上使用。

springmvcspringBoot

<bean id="cutomer" class="com.xxx.xxx.Customer" autowire="" />

手动装配:以valueref的方式明确指定属性值都是手动装配。

需要通过‘ref’属性来连接bean

Cutomer的属性名称是personSpring会将bean idpersonbean通过setter方法进行自动装

配。

<bean id="cutomer" class="com.xxx.xxx.Cutomer" autowire="byName"/>

<bean id="person" class="com.xxx.xxx.Person"/>

Cutomer的属性person的类型为PersonSpirng会将Person类型通过setter方法进行自动装配。

<bean id="cutomer" class="com.xxx.xxx.Cutomer" autowire="byType"/>

<bean id="person" class="com.xxx.xxx.Person"/>

Cutomer构造函数的参数person的类型为PersonSpirng会将Person类型通过构造方法进行自动装

配。

<bean id="cutomer" class="com.xxx.xxx.Cutomer" autowire="construtor"/>

<bean id="person" class="com.xxx.xxx.Person"/>

如果有默认的构造器,则通过constructor方式进行自动装配,否则使用byType方式进行自动装配。

Spring MVC

spring是一个IOC容器,用来管理Bean,使用依赖注入实现控制反转,可以很方便的整合各种框架,提

供AOP机制弥补OOP的代码重复问题、更方便将不同类不同方法中的共同处理抽取成切面、自动注入给

方法执行,比如日志、异常等

springmvc是springweb框架的一个解决方案,提供了一个总的前端控制器Servlet,用来接收请求,

然后定义了一套路由策略(urlhandle的映射)及适配执行handle,将handle结果使用视图解析技术

生成视图展现给前端

springboot是spring提供的一个快速开发工具包,让程序员能更方便、更快速的开发spring+springmvc

应用,简化了配置(约定了默认配置),整合了一系列的解决方案(starter机制)、redis、

mongodb、es,可以开箱即用

SpringMVC 工作流程

1)用户发送请求至前端控制器 DispatcherServlet

2DispatcherServlet 收到请求调用 HandlerMapping 处理器映射器。

3)处理器映射器找到具体的处理器(可以根据 xml 配置、注解进行查找),生成处理器及处理器拦截器

(如果有则生成)一并返回给 DispatcherServlet

4DispatcherServlet 调用 HandlerAdapter 处理器适配器。

5HandlerAdapter 经过适配调用具体的处理器(Controller,也叫后端控制器)

6Controller 执行完成返回 ModelAndView

7HandlerAdapter controller 执行结果 ModelAndView 返回给 DispatcherServlet8

DispatcherServlet ModelAndView 传给 ViewReslover 视图解析器。

9ViewReslover 解析后返回具体 View

10DispatcherServlet 根据 View 进行渲染视图(即将模型数据填充至视图中)。

11DispatcherServlet 响应用户。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值