ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 스프링 - 어노테이션
    자바 초보개발/스프링 2024. 2. 21. 17:43

    스프링의 가장 큰 장점은 객체 생성과 조립을 자동으로 해준다는 것이다.

     

    객체를 조립한다는 것은 Servlet 프로젝트를 진행해봤다면 이해하기 쉽다.

     

    일반적으로 서버를 가동한 후 사용자수가 많아지고, 백만, 천만 단위로 점점 사용자가 많아지면 일일이 객체를 생성하면 서버에 큰 부하가 올 수 있다고 한다. 그래서 미리 몇개의 객체를 생성해 놓고, 자료구조에 객체를 넣어놓은 다음 사용자 요청이 있을 때마다 만들어둔 객체를 꺼내서 서비스를 제공하는 방식으로 부하를 줄이는 방법이 있다.

     

    //객체를 넣어둘 자료구조 Map 생성
    New Map<String,Object> controllerMap = new HashMap<>;
    
    //생성한 객체를 Map에 넣어둔다.
    controllerMap.put("/main", new MainController());
    
    
    //생성했던 객체를 꺼내서 메서드를 실행한다.
    controllerMap.get("/main").execute();

     

     

    어노테이션은 원래 자바에서 다양한 방식으로 사용된다고 하지만,

    스프링에서는 주로 위처럼 객체를 생성하고 조립을 자동으로 할 코드를 표시하는 기능으로 사용한다.

     

    아래처럼 클래스 위에 @어노테이션 종류를 입력해준다.

    @Controller
    
    public class BoardController {
    	
    	}

     

    이렇게 쓸 경우 BoardController를 생성한 뒤 Map에 넣는 것과 비슷한 일이 일어난다고 생각하면 편할 것 같다.

     

    자주  사용하게 되는 비슷한 어노테이션은

     

    @Service : 로직을 수행할 중간과정 클래스 위에 작성

     

    @Repository : DB와 연결하여 정보를 처리하는 클래스 위에 작성

     

    등이 있다.

     

     

    이 외에도 @Autowired, @GetMapping 처럼 클래스에 직접쓰지 않는 어노테이션이 있지만 현재는 생략하려고 한다.

     

Designed by Tistory.