Lombok(롬복)은 특정 어노테이션으로 해당 코드를 추가할 수 있는 라이브러리이다.
코드 다이어트?...다이어트는 내가 해야되는데..아무튼 가독성, 유지 보수에 도움이 많이 된단다.
안 익숙한 초짜는 가독성이 전혀 도움 안 되는게 함정 그게 나야나
자바빈즈 패턴
매개변수가 없는 생성자로 객체를 만든 후, Setter 메서드들을 호출해서 원하는 매개 변수 값을 설정하는 방식이다. 정의는 순조로워 보이지만... default 생성자를 통해서 객체만 생성하고 필요한 매개변수들을
setter 메서드로 값을 설정해준다고 할때 만약 설정해야할 매개변수 수가 왕창 많으면
그만큼 Setter 메서드를 호출해야함.
TestVo testVo = new TestVo();
testVo.setUserIdx(1);
testVo.setUserName("Me");
testVo.setTitle("testTitle");
..
빌더패턴
자바빈즈 패턴의 단점을 보안한 패턴.
@Builder는 생성자 상단에 선언해주면, 그 생성자에 포함된 필드에 대해 빌더 메소드를 자동 생성.
스프링에서 Bean이란?
스프링 컨테이너에 의해서 자바 객체가 만들어지게 되면, 이 객체를 스프링은 스프링 빈(Bean)이라고 함.
스프링 빈과 자바 일반객체와의 차이점은 없고 스프링 컨테이너에서 만들어진 객체를 스프링 빈으라고 부를 뿐뿐
스프링 빈의 어노테이션 종류
@Component , @Service, @Controller, @Repository, @Bean, @Configuration 등으로 필요한 빈들을 등록하고 필요한 곳에서 @Autowired를 통해 주입받아 사용하는 것이 일반적이다.
@Service, @Controller, @Repository는 모두 @Component를 상속받고 있다.
해당 어노테이션으로 등록된 클래스들은 스프링 컨테이너에 의해 자동으로 생성되어 스프링 빈으로 등록된다.

@Component & @Autowired
스프링부트에서 사용자 클래스를 스프링 빈으로 등록하는 가장 쉬원 방법은 클래스 선언부 위에 컴포넌트 어노테이션을 사용하는 것이다.
@Component가 붙은 클래스는 스프링 빈 객체로 등록 되어 객체 생성/삭제를 스프링에서 관리할 수 있다.
'Programming👩🏻💻 > AxBoot' 카테고리의 다른 글
| Banner / Logging / Excel download (0) | 2021.04.30 |
|---|---|
| jsfiddle (0) | 2021.04.23 |
| *중요 디버깅, 단위테스트 (0) | 2021.04.22 |
| Mybatis연동 (0) | 2021.04.19 |
| QueryDSL (0) | 2021.04.19 |