SPING/Spring 이용하기

[Spring] Spring 시작하기 (@Configuration,@Bean)

h0-0cat 2023. 6. 13. 16:56
728x90

Spring 

Maven Project로 연습해보기 

 

 

 

 

pom.xml 수정하기 

springframework.version

<springframework.version>5.3.27</springframework.version>

 

 

maven-compiler-plugin

	<pluginManagement>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.2</version>
				<configuration>
					<source>10</source>
					<target>10</target>
				</configuration>
			</plugin>
		</plugins>
	</pluginManagement>

 

finalName

<finalName>ProjectName</finalName>

 

springframework

		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-core</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<version>${springframework.version}</version>
		</dependency>

 

 

lombok

		<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<version>1.18.28</version>
			<scope>provided</scope>
		</dependency>
		
		<!-- https://mvnrepository.com/artifact/junit/junit -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.13.2</version>
			<scope>test</scope>
		</dependency>

 

junit

 

Source Folder 만들기

package 만들기 

 

Interface 로  Hello.java 

// 긁지않은 개발자
public interface Hello{
	public void sayHello(String name);
}

 

 

 

HelloImpl.java  (implements Hello)

// 긁지않은 개발자
public class HelloImpl implements Hello{
	@Override
    public void sayHello(String name){
    	system.out.println(name + "님 안녕하세요.");
    }
}

 

 

 

@Configuration 

@Configuration이라고 하면 설정파일을 만들기 위한 어노테이션 or Bean을 등록하기 위한 어노테이션이다.

// 긁지않은 개발자
@Configuration
public class HelloConfig{
	@Bean(name="hello")
    public Hello hello(){
    	return new HelloImpl();
    }
}

 

 

HelloApp.java (실행)

// 긁지않은 개발자
public class HelloApp{
	public static void main(String[] args){
    	Hello heool = new HelloImpl();
        	hello.sayHello("긁지않은개발자")
    }
}

실행 결과

긁지않은개발자님 안녕하세요.

 

 

 

 

 

@Configuration

@bean(name = )

https://h0-0cat.tistory.com/entry/%E3%85%A1-17

 

[Spring] @Bean, @Configuration 사용방법과 뜻

@Bean 객체 등록하기 스프링 빈과 자바 일반 객체와의 차이점은 없고 스프링 컨테이너에 의해 만들어진 객체를 스프링 빈이라고 부를 뿐이다. (스프링 컨테이너에 등록한 객체들을 빈 이라고 한

h0-0cat.tistory.com

728x90