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

公司网站模板建设什么网站能代做预算

公司网站模板建设,什么网站能代做预算,完整的网站优化放啊,客厅装修效果图片大全文章目录 前言概述一、属性注入1.1 实例1.2 优点1.3 缺点 二、Setter注入2.1 实例2.2 优点2.3 缺点 三、 构造方法注入3.1 实例3.2 优点3.3 缺点 四、扩展 前言 IoC和DI是Spring中重要的两个概念,其中IoC指的是控制反转,DI(依赖注入)指的是IoC的具体实现…

文章目录

  • 前言
  • 概述
  • 一、属性注入
    • 1.1 实例
    • 1.2 优点
    • 1.3 缺点
  • 二、Setter注入
    • 2.1 实例
    • 2.2 优点
    • 2.3 缺点
  • 三、 构造方法注入
    • 3.1 实例
    • 3.2 优点
    • 3.3 缺点
  • 四、扩展


前言

IoC和DI是Spring中重要的两个概念,其中IoC指的是控制反转,DI(依赖注入)指的是IoC的具体实现方式。那么DI实现依赖注入有哪些方式呢?这些方式又各自有什么优缺点呢?接下来,让我们一起来看一看。


概述

在Spring中实现依赖注入的常见方式有以下三种:

  1. 属性注入
  2. Setter注入
  3. 构造方法注入

它们的具体使用方式以及优缺点如下。

一、属性注入

属性注入是Spring三种常见注入方法最简单的方式,也算是开发过程中,开发者最喜爱的方式。

1.1 实例

属性注入只需要使用@Autowired修饰,就可以直接获得注入的对象,代码如下:

@Controller
public class UserController {@Autowired  private UserService userService;}

1.2 优点

属性注入的优点就是实现简单,使用简单。

1.3 缺点

  1. 不能注入不可变对象,也就是不能注入final修饰的对象
  2. 兼容性不好,只适合IoC容器
  3. 由于写法简单,也更容易违背单一设计原则

二、Setter注入

2.1 实例

Setter注入需要引入这个对象的set方法,并且用@Autowired修饰。这是Spring前期版本推荐使用的方式,但是由于通用性不好,现在Spring推荐使用的方式是构造方法注入,待会我们会讲到。

@Controller
public class UserController {private UserService userService;@Autowiredpublic void setUserService(UserService userService) {this.userService = userService;}
}

2.2 优点

相比于属性注入,Setter注入更符合单一设计原则,因为每次都只传递了一个对象。

2.3 缺点

  1. 和属性注入一下,Setter注入不能注入不可变对象
  2. 注入的对象可能被修改(因为可能有其他人调用这个set方法)

三、 构造方法注入

3.1 实例

构造方法注入,顾名思义,需要引入对象的构造方法。除此之外,@Autowired在这里可以省略

@Controller
public class UserController {private UserService userService;// @Autowired public UserController(UserService userService) {this.userService = userService;}
}

3.2 优点

  1. 与前两者方式不同,构造方法注入可以注入不可变的对象。这是因为在JavaSE中,创建final修饰的对象时,要么直接赋值,要么在构造方法中赋值,必须满足其一。
  2. 由于构造方法只执行了一次,注入的对象不会被改变。
  3. 可以保证注入对象完全被初始化。
  4. 兼容性更好

3.3 缺点

如果有多个注入会显得比较臃肿,但是出现这种情况我们应该考虑一下当前类是否符合程序的单一设计原则。

四、扩展

除了上诉@Autowired修饰的三种依赖注入以外,还有另外一种注入关键字@Resource

那么@Resource和@Autowired有什么区别呢?

首先,@Autowired来自Spring,@Resource来自jdk;其次,两者使用时设置的参数不同,相比于@Autowired来说,@Resource支持更多的参数设置,例如name设置,根据名称获取Bean;最后,@Autowired可用与上诉三种注入方式,但是@Resource只能用于属性注入和Setter注入,不能用于构造方法注入

http://www.yayakq.cn/news/722657/

相关文章:

  • 百度基木鱼建站国外设计素材网
  • 有哪些网站是html5的seo搜索引擎优化期末及答案
  • 怎么做查询网站吗优化设计三年级下册语文答案
  • 简单的网站类型有哪些内容企业网站建设的公司
  • 什么网站比较容易做权重做支付宝二维码网站
  • 打开国外网站很慢怎么办网页设计与制作(第3版)书籍
  • 大型企业网站网站的域名在哪里看
  • 深网站建设免费h5模板网站模板
  • 网上做流量对网站有什么影响吗一学一做征文网站
  • 网站推广100种方法神农架网页设计
  • 商务网站规划与设计iis配置网站访问权限
  • 自己想做个网站需要多少钱专业微网站营销
  • 不用下载的行情网站开发公司排名
  • 网站建设的实施方案国家和住房城乡建设部网站
  • 竞价网站单页面网络网站建设app
  • 建设网站需要那些技术人员微信小程序界面设计模板
  • 网站设计公司排行榜域名是什么东西
  • 网站建设响应式是什么意思健身会所网站模板
  • 网站建设哪家好 北京西西美人美体
  • seo网站建设公司哪家好小程序商城开发流程
  • 小程序推广费用一个月需要多少钱宁波专业seo外包
  • 西宁做网站君博相约微信网站制作
  • 网站浏览历史记录恢复方法是什么阿坝州建设局网站刘志彬
  • 网站里的地图定位怎么做的淘宝关键词优化技巧教程
  • 网站设计页面织梦免费网站模块下载
  • 网站建设公司汕头的顺德网页制作公司
  • 汕头市网站建设公司用什么网站做海报 知乎
  • wordpress建站 域名免费发布推广信息的软件
  • 外贸快车做网站怎么样学校网站asp
  • 怎样做1个网站住房城乡建设网站