Annotation은 사전적 의미는 '주석'이며
코드 사이에 주석처럼 쓰이며 기능을 수행하도록 하는 기술입니다/
코드 작성 문법 에러를 체커하도록 정보를 제공하고
이 개발 툴이 코드를 자동으로 생성할 수 있도록 도와줍니다.
또한 실행시에 특정한 기능을 수행하도록 도와줍니다.
종류를 살펴보겠습니다.
1. @Bean : 개발자가 직접 제어가 불가능한 외부 라이브러리 등을
Bean으로 만들때 사용합니다.
2. @Autowired : 속성, setter, 생성자에서 사용하며,
타입에 따라서 Bean을 주입해줍니다.
3. @Controller : Spring의 Controller
view(화면, .jsp)를 return해주는게 목적입니다.
4. @RestController : Controller 중에서 View 쪽으로
응답하지 않는 Controller인데
data(xml, json)들을 return해주는게 목적입니다.
이 기능은 Spring 4.x.x에서부터 제공합니다.
5. @ResponseBody : 자바 객체를 HTTP 요청의 body 내용으로
매핑을 하는 역할을 합니다.
RestController = Controller + ResponseBody
라고 보시면 됩니다.
6. @Service : 비즈니스 로직을 수행하는 Class임을 나타낼 때 사용합니다.
비즈니스 로직 (Business Logic) : 사용자 눈에는 안보이지만, 사용자가 원하는 결과물을
올바르게 도출할 수 있도록 짜여진 코드입니다.
7. @XmlRootElement / @XmlElement
OXM(Object XML Mapping) => 어떤 데이터를 XML로 변환하기 위한 데이터인데
이것을 하기 위해 사용합니다.
특정 데이터를 XML 형태로 만들어주는 것 : 마샬링 (mashalling)
XML데이터를 특정 데이터로 만들어주는 것 : 언마샬링(unmashalling)
XmlRootElement : Javabean의 Class명 위에 명시합니다.
XmlElement : Javabean의 setter에 명시합니다.
8. @RequestMapping : 요청에 따라 어떤 Controller, 어떤 Method가 처리될지
매핑하기 위해서 사용합니다.
value :요청받을 주소(url)을 설정
method : 어떤 요청으로 받을지 설정
(GET, POST, PUT, DELETE, PATCH) 등의 요청이 있는데
표준 개발 기구 W3C(World Wide Web Consortium) 에서
PUT, DELETE, PATCH ... 가 과연 유용한 요청인가? 라고 생각했습니다.
그래서 보통은 GET과 POST를 사용합니다.
9. @RequestParam : 요청 파라미터 설정
'Spring > 이론' 카테고리의 다른 글
[Spring] POST요청 (0) | 2025.02.11 |
---|---|
[Spring] Autowired (0) | 2025.02.10 |
[Spring] Bean (0) | 2025.02.10 |
[Spring] 기초 이론 (0) | 2025.02.10 |
[Spring] 초기 세팅 (0) | 2025.02.10 |