用JSR的@Inject代替@Autowired完成自动装配
2024-09-04 16:26:43
从spring3.0开始spring支持JSR-330 的标准注解。主要是javax.inject这个包下的:
下面的例子用@Inject代替@Autowired。完成自动装配:
MovieFinder的代码如下:
package com.timo.demo; import org.springframework.stereotype.Component; @Component
public class MovieFinder {
private String name;
public void findMovies(){
System.out.println("1,2,3");
}
}
SimpleMovieLister的代码如下:
package com.timo.demo; import org.springframework.stereotype.Component; import javax.inject.Inject;
import javax.inject.Provider;
@Component
public class SimpleMovieLister {
@Inject
private Provider<MovieFinder> movieFinder; public void setMovieFinder(Provider<MovieFinder> movieFinder) {
this.movieFinder = movieFinder;
}
public void listMovies(){
movieFinder.get().findMovies();;
}
}
配置类的代码如下:
package com.timo.demo; import org.springframework.context.annotation.ComponentScan; @ComponentScan(basePackageClasses = DemoAppConfig.class)
public class DemoAppConfig {
}
测试类的代码如下:
package com.timo.demo; import org.springframework.context.annotation.AnnotationConfigApplicationContext; public class Test {
public static void main(String[] args) {
AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(DemoAppConfig.class);
SimpleMovieLister movieLister = applicationContext.getBean(SimpleMovieLister.class);
movieLister.listMovies();
}
}
最新文章
- dede currentstyle属性完美解决方案
- Sql数据库帮组类
- Java基础-String 存储机制管理
- 人工免疫算法-python实现
- 【linux】暂时解决sis m672(神舟F4000 D9) linux驱动 宽屏分辨率的问题?
- yii表单
- dispatch_async &; dispatch_sync
- suse pshell连接不上
- rte_mempool内存管理
- 1833: [ZJOI2010]count 数字计数
- scrapy分布式爬虫scrapy_redis二篇
- 8天入门docker系列 —— 第一天 docker出现前的困惑和简单介绍
- 基于H5的WebSocket简单实例
- 分布式架构探索 - 1. RPC框架之Java原生RMI
- JDBC-day02
- Kattis之旅——Eight Queens
- Ubuntu安装bcmath扩展
- 嵌入式linux开发:杂七杂八的话
- 【bzoj4591】超能粒子炮&#183;改
- HDU 2050 折线分割平面 (数学)
热门文章
- JavaScript之原型 Prototype
- 抽象类实验:SIM卡抽象
- Oracle 完全理解connect by-详细脚本-可实战
- pprof 查看goroutine
- android中的AIDL学习笔记
- 27、理解js的继承机制(转载自阮一峰)
- CSS属性,可以完成99%的页面编写
- [spring+tomcat]启动时报错:NoSuchMethodError: javax.servlet.http.HttpServletResponse.getStatus()I
- P5056 插头dp
- 机器学习实战一:kNN手写识别系统