1、创建maven project项目
2、查看jdk版本,jar包是否灰色,项目是否异常。
3、修改pom.xml文件
jar包呈灰色:取消该jar包的test
3.1导入spring相关包
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.6.RELEASE</version>
</dependency> **加粗样式**
4.1、功能类的Bean(Service实现类)
@Service
public class FunctionService {
public String sayHello(String name) {
return "Hello "+name+" world! ";
}
}
@Service说明当前类为Spring容器管理的Bean。
与@component、@repository、@controller一致,区别在bean\dao\contrller\层不同
4.2、使用功能类的Bean(Service类)
@Service
public class UseFunctionService {
@Autowired
FunctionService functionService;
public String sayHello(String name) {
return functionService.sayHello(name);
}
}
@Autowired表示在当前类中实例化了被注解的类(FunctionService),就可以调用FunctionService中的方法和全局变量。
使用@Inject或@Resource效果一致。但是@Inject需要另外导入相关jar包
4.3、配置类
@Configuration
@ComponentScan("com.demo02.demo02")
public class DiConfig {
}
@Configuration表示当前类为配置类
@ComponentScan自动扫描指定包中所有使用@Service、@controller、@repository、@component注解的类,并注册为Bean
4.4、运行类 (Spring容器类选用AnnotationConfigApplicationContext)
public class App {
public static void main( String[] args ){
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(DiConfig.class);
UseFunctionService useFunctionService = context.getBean(UseFunctionService.class);
String sayHello = useFunctionService.sayHello("xiaoming");
System.out.println(sayHello);
context.close();
}
}