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

什么样的公司专业做网站的360免费建站系统

什么样的公司专业做网站的,360免费建站系统,wordpress怎么填写关键词,阿里云万网网站建设靠谱吗Spring IoC中除了基础的Bean,Compoent,RestController还有一些其他的注解可以用来控制Bean注入的时机一起来了解一下吧。 目录 Lazy 懒加载注解Conditional 条件注解DependsOn 依赖注解Order 注入顺序注解 Lazy 懒加载注解 Lazy注解会延迟初始化这个Bean 当类上没有加Lazy注解…

Spring IoC中除了基础的@Bean,@Compoent,@RestController还有一些其他的注解可以用来控制Bean注入的时机一起来了解一下吧。

目录

  • @Lazy 懒加载注解
  • @Conditional 条件注解
  • @DependsOn 依赖注解
  • @Order 注入顺序注解

@Lazy 懒加载注解

@Lazy注解会延迟初始化这个Bean
当类上没有加@Lazy注解时,项目启动就会初始化这个Bean
当类上加上@Lazy注解时,只有真正使用到这个Bean,才会被初始化并注入的IoC容器中。

@Lazy
@Component
public class UserServiceImpl{public UserServiceImpl(){System.out.println("UserServiceImpl");}
}

@Lazy也可以写在属性上用来避免循环依赖。如下代码,如果没有使用@Lazy则会出现循环依赖导致启动失败。

@Component
public class UserServiceImpl{@Lazy@Autowiredprivate UserServiceImpl userService;public UserServiceImpl(){System.out.println("UserServiceImpl");}
}

@Conditional 条件注解

在类上加上@Conditional注解,然后自定一个实现类实现Condition接口,并且@Conditional关联到这个接口即可。
该接口只有一个实现方法,返回boolean类型,返回true则表示要注入到Ioc容器中,返回false则相反。

@Conditional(MyConditional.class)
@Component
public class UserServiceImpl{public UserServiceImpl(){System.out.println("UserServiceImpl");}
}
public class MyConditional implements Condition{@Overridepublic boolean matches(ConditionContext context,AnnotatedTypeMatadata metadata){return false;}
}

@DependsOn 依赖注解

表示该Bean初始化是依赖某个Bean,需要等依赖的Bean初始化完成后再注入到IoC容器中。
这个可以用来控制Bean的初始化顺序。

@DependsOn("userServiceImpl2")
@Component
public class UserServiceImpl{@Autowiredprivate UserServiceImpl userService;public UserServiceImpl(){System.out.println("UserServiceImpl");}
}
@Component
public class UserServiceImpl2{@Autowiredprivate UserServiceImpl userService;public UserServiceImpl(){System.out.println("UserServiceImpl2");}
}

@Order 注入顺序注解

Person接口有两个实现类,
UserController 使用List 将两个实现类都注入进来,那么List中的顺序是如何的呢?
如果没有使用@Order注解默认情况下是要做编码顺序来的也就是[PersonServiceImpl1,PersonServiceImpl2]
如果按照如下使用@Order注解则顺序是[PersonServiceImpl2,PersonServiceImpl1]
@Order注解中的值越小优先级越高
注意:@Order只影响依赖注入的顺序,不会影响Bean初始化的顺序。
Bean初始化的顺序依然是采用@DependsOn 注解来控制的。因此按照如下代码初始化顺序依然是默认的源码顺序也就是
[PersonServiceImpl1,PersonServiceImpl2]

public interface Person{
}
@Order(2)
@Component
public class PersonServiceImpl1 implements Person{public PersonServiceImpl1(){System.out.println("PersonServiceImpl1");}
}
@Order(1)
@Component
public class PersonServiceImpl2 implements Person{public PersonServiceImpl2(){System.out.println("PersonServiceImpl2");}
}
@RestController
public class UserController{public UserController(List<Person> personList){System.out.println(personList.size());System.out.println("UserController");}
}
http://www.dtcms.com/wzjs/175669.html

相关文章:

  • 注册公司网站的步骤seo的基本步骤顺序正确的是
  • 做企业网站用什么软件镇江关键字优化品牌
  • 徐州网站制作盐城seo营销
  • 做漫画网站空间多大seo的概念
  • 腾讯云做网站需要报备自贡网站seo
  • 企业网站一般用什么框架做近期出现的病毒叫什么
  • 网站专题建设seo推广排名平台有哪些
  • 国家卫健委今日疫情报告seo搜索引擎优化招聘
  • 网站制作案例如何广告优化师是做什么的
  • 泉州企业网站维护定制富阳seo关键词优化
  • 网站备案 加急网上推广渠道有哪些
  • 网站设计制作行业排行福州网seo
  • iis 网站压缩全网万能搜索引擎
  • wordpress 单本小说google关键词优化
  • 网站建设的核心是seo门户网站
  • 常州网站建设找思创中国十大互联网公司
  • 有什么做ppt的网站吗手机卡顿优化软件
  • 做网站店铺装修的软件外链网盘
  • 温州网站改版福州seo排名优化
  • 外卖做的比较好的网站营销型网站建设推广
  • 东莞哪里有做企业网站的搜索引擎优化课程
  • 聊城做网站费用价格网站分析
  • 公司免费网站注册网站在线优化检测
  • 用eclipse做网站软文推广的好处
  • 做百度网站图片怎么做软文发布平台哪个好
  • 公司管理系统开发佛山seo培训机构
  • 摄影网站模板短视频营销的特点
  • 莆田网站建设方案服务seo常用的优化工具
  • 网站建设框架怎么做优化教程网官网
  • 什么样的网站需要备案站长之家关键词查询