단순 코드 기록/Spring Boot

SB_서브 패키지

일일일코_장민기 2024. 2. 26. 13:10
728x90
Main(import 사용)(Config Bean생성)
package com.example;

import java.util.List;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Import;

import com.config.JavaConfig;
import com.service.DBService;


@SpringBootApplication
@Import(value = JavaConfig.class)				//import, 자동 실행+자동 Bean 등록(서브 패키지가 다른 경우, import가 필요함)
public class Sample01BeanApplication {

	public static void main(String[] args) {
		//SpringApplication.run(Sample01BeanApplication.class, args);
		//JavaConfig를 이용한 명시적 Bean 생성 후 getBean
		//@Import(value = JavaConfig.class) 필요
		ApplicationContext ctx = SpringApplication.run(Sample01BeanApplication.class, args);
		
		DBService service = ctx.getBean("myService", DBService.class);
		List<String> list = service.getList();
		System.out.println(list);
		
	}

}

 

 

Main(componentScan)(@Service)
package com.example;

import java.util.List;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.stereotype.Service;

import com.service.DBService;

@SpringBootApplication
@ComponentScan("com.*")	//패키지가 다른 경우, 명시적으로 component-scan이 필요
public class Sample {

	public static void main(String[] args) {
		ApplicationContext ctx = SpringApplication.run(Sample.class, args);
		DBService service = (DBService) ctx.getBean("myService");	//DBService에서 @Service까지만 입력하면 함수이름으로 출력 가능
		List<String> list = service.getList();
		System.out.println(list);
	
	
	}

}

 

 

Main(scanBasePakages)(@Service)
package com.example;

import java.util.List;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.stereotype.Service;

import com.service.DBService;

@SpringBootApplication(scanBasePackages = "com.*")	//이하와 동일 역할
													//@SpringBootApplication
													//@ComponentScan("com.*")	//패키지가 다른 경우, 명시적으로 component-scan이 필요
public class Sample {

	public static void main(String[] args) {
		ApplicationContext ctx = SpringApplication.run(Sample.class, args);
		DBService service = (DBService) ctx.getBean("myService");	//DBService에서 @Service까지만 입력하면 함수이름으로 출력 가능
		List<String> list = service.getList();
		System.out.println(list);
	
	
	}

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'단순 코드 기록 > Spring Boot' 카테고리의 다른 글

SB_Properties(@Values)  (0) 2024.02.26
SB_JavaConfig와 Component-Scan  (0) 2024.02.26
SB_로그 환경 설정  (0) 2024.02.21