본문 바로가기
IT/Spring

[Spring] - 스프링 @어노테이션(Annotation) 종류 및 사용법

by 차이나는 개발자 2020. 9. 22.
728x90
반응형

#스프링 @어노테이션(Annotation) 종류 및 사용법

 

 

@Controller

-Spring MVC의 Controller 클래스 선언을 단순화합니다.

스프링 컨트롤러, 서블릿을 상속할 필요가 없으며, @Controller로 등록된 클래스 파일에 대한 bean을 자동으로 생성해줍니다.

(component-scan 이용)

 

@Autowired

 

@Value("${ }")

 

@ResponseBody

 

@RequestParam

 

@RequestMapping(".do")

-URL을 컨트롤러의 메서드와 매핑할떄 사용합니다.

 

@Service("명시")

-비즈니스로직이 들어가는 Service 빈 등록을 합니다.

 

@Repository("명시") 

-일반적으로 DAO에 사용되며 DB Exception을 DataAcessException으로 변환합니다.

 

@Resource(name="") >> name속성을 통해 자동 주입을 실행합니다.

-빈 DI등록할때 사용합니다.

 

@SuppressWarnings("rawtypes")

-제네릭을 사용하는 클래스 매개변수가 불특정일때의 경고 억제 역할을 합니다.

 

#EgovMap(클래스, 타입)

-Camel Case표기법 변환 처리를 포함하는 Map 확장 클래스입니다.

 

#HttpServletRequest request

-Servlet API

 

#return "jsonView";

-MappingJackson2JsonView를 사용해서 ModelAndView를 json 형식으로 반환 해줍니다.

 

 

1) MappingJacksonJsonView 형식의 jsonView를 Spring Bean으로 등록합니다.

- 일반적인 Spring 이라면 DispatcherServlet에 설정을 해줍니다.

<bean id="jsonView" class="org.springframework.web.servlet.view.json.MappingJacksonJsonView">
    <property name="contentType" value="application/json;charset=UTF-8"> </property>
</bean>

 

- Spring boot를 사용하고 따로 DispatcherServlet xml을 사용해서 설정하지 않는다면, @Configuration 을 붙인 WebConfig 파일에서 Bean으로 등록해줍니다.

    @Bean
    MappingJackson2JsonView jsonView(){
        return new MappingJackson2JsonView();
    }

 

2) Controller에서 return할 ModelAndView를 생성 할 때 View를 "jsonView"로 설정합니다.

    ModelAndView mv = new ModelAndView("jsonView");
    userVO.setOrderBy(orderDir);
    userVO.setOrderId(orderColNm);
    
    List<UserVO> userList = userMgmtSvc.selectUserList(userVO);
    int totalCnt = userMgmtSvc.selectUserListCount(userVO);
    
    mv.addObject("recordsTotal", totalCnt);
    mv.addObject("recordsFiltered", totalCnt);
    mv.addObject("data", userList);
    
    return mv;

 

3) 클라이언트에서 Response가 json 형식으로 잘 오는것을 확인합니다.

 

 

 

728x90
반응형

댓글