본문 바로가기

학원/Spring

09_어노테이션

728x90
반응형

@Controller 컨트롤러로 선언
@RestController  @Controller+@ResponseBody

@RequestMapping("주소") 모든 방식의 접근 허용
@Get Mappling("주소") Get 방식의 접근만 허용
@PostMapping("주소") Post 방식의 접근만 허용
@PathVariable 경로변수(Path Variable)방식 day32 참고
@GetMapping("/detail/{boardNo}")
      public String detail2(@PathVariable int boardNo, Model model) {
@Repository 영속성 컨텐츠 제어 모듈(파일이나 DB 다루는 모듈)
@Service 모두 묶어서 써야하는 경우(복잡한 한 덩어리의 문제)
@Component 독립 기능(repository와는 서로 못부름)

@Autowired 리파지터리 갖다 쓰기
@Resource 설정 불러올때
@Qualifier 아이디를 지정해가면서 똑같은 DAO 등록가능 
@Inject

@ResponseBody 이 메소드의 결과를 그대로 사용자에게 전달
@ModelAttribute 클래스 매개변수를 사용하여 파라미터를 수신
       @ModelAttribute("vo") PaginationVO vo, Model model 자동 model 수신
@RequestParam 변수를 사용하여 파라미터를 수신
       @RequestParam(required=false, defaultValue="0")

@RequestBody Json형태의 데이터 수신

 

@ParameterObject restAPI 문서 처리용 어노테이션


lombok

@Setter
@Getter 클래스에 있는 모든 필드에 세터게터를 만들어라
@NoArgsConstructor 매개변수가 없는 기본 컨스트럭터(생성자)
@AllArgsConstructor 매개변수를 전부 쓰는 컨스트럭터
@ToString toString 생성
@Data setter+getter+toString 생성, 기본생성자는 자동으로 생김

@PostConstruct 생성자 대체(component할 때)

@Configuration  스프링 설정클래스(인터셉터 등록시 사용 등) day30

 

@CrossOrigin CORS(교차 출처 리소스 공유 정책)

      @CrossOrigin(origins = "http://localhost:8080")

728x90
반응형

'학원 > Spring' 카테고리의 다른 글

28_웹소켓  (0) 2023.04.30
27_Email, Scheduling  (0) 2023.04.30
11_spring 파일입출력  (0) 2023.02.19
10_spring  (0) 2023.02.19