1、通过bean注解装配到IOC容器
创建装配的类,如下
package com.sboot.pr.bean;
public class BeanPOJO {
private int id;
private String name;
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
通过bean注解装配BeanPOJO到IOC容器
package com.sboot.pr.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.sboot.pr.bean.BeanPOJO;
@Configuration
public class BeanConfig {
@Bean(name = "beanPOJO")
public BeanPOJO initBeanPOJO() {
BeanPOJO pojo = new BeanPOJO();
pojo.setId(1);
pojo.setName("BeanPOJO");
pojo.setAge(29);
return pojo;
}
}
把装配的BeanPOJO 注入
package com.sboot.pr.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import com.sboot.pr.bean.BeanPOJO;
import com.sboot.pr.bean.ComponentPOJO;
import com.sboot.pr.bean.ComponentScanPOJO;
@RestController
public class TestController {
@Autowired
private BeanPOJO beanPoJO;
@GetMapping("/boot/getBeanPOJO")
public BeanPOJO getBeanPOJO() {
return beanPoJO;
}
}
访问注入的BeanPOJO信息
http://localhost:1111/boot/getBeanPOJO
2、通过Component注解扫描装配bean到IOC容器
创建装配的类,如下
package com.sboot.pr.bean;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.stereotype.Component;
@Component("componentPOJO")
public class ComponentPOJO {
@Value("2")
private int id;
@Value("ComponentPOJO")
private String name;
@Value("29")
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
把装配的ComponentPOJO 注入
package com.sboot.pr.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import com.sboot.pr.bean.BeanPOJO;
import com.sboot.pr.bean.ComponentPOJO;
import com.sboot.pr.bean.ComponentScanPOJO;
@RestController
public class TestController {
@Autowired
private ComponentPOJO componentPOJO;
@GetMapping("/boot/getComponentPOJO")
public ComponentPOJO getComponentPOJO() {
return componentPOJO;
}
}
访问注入的ComponentPOJO 信息
http://localhost:1111/boot/getComponentPOJO
3、通过ComponentScan注解扫描装配bean到IOC容器
创建装配的类,如下
package com.sboot.pr.bean;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
@Configuration
@ComponentScan
public class ComponentScanPOJO {
@Value("3")
private int id;
@Value("ComponentScanPOJO")
private String name;
@Value("29")
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
把装配的ComponentScanPOJO 注入
package com.sboot.pr.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import com.sboot.pr.bean.BeanPOJO;
import com.sboot.pr.bean.ComponentPOJO;
import com.sboot.pr.bean.ComponentScanPOJO;
@RestController
public class TestController {
@Autowired
private ComponentScanPOJO componentScanPOJO;
@GetMapping("/boot/getComponentScanPOJO")
public ComponentScanPOJO getComponentScanPOJO() {
return componentScanPOJO;
}
}
访问注入的ComponentScanPOJO信息
http://localhost:1111/boot/getComponentScanPOJO
到此这篇关于Springboot 注入装配到IOC容器方式的文章就介绍到这了,更多相关Springboot 注入IOC容器内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!