자주 사용하는 스프링부트 어노테이션 종류와 목적

스프링부트( Springboot )로 코딩을 하다보면 자주보이는 것들이 있다.

어노테이션( Annotation )이다.

어노테이션은 스프링부트에서 클래스, 메서드, 필드 위에 지정하여, 역할을 지정한다.

스프링부트는 어노테이션을 읽고 클래스, 메서드, 필드가 어떤 역할을 하는지 파악하고 그에 맞게 실행된다.

지금의 스프링부트 어노테이션의 경우 편의성이 높아졌으며,
단순하고 반복적인 코드를 어노테이션으로 처리할 수 있다.

스프링부트의 중요한 개념 중 하나가 의존성 주입인데,
어노테이션과 관련이 있다.

즉, 스프링부투의 어노테이션은
객체를 생성, 등록( 의존성 주입 ), 데이터의 흐름과 연결을 자동으로 처리해주는 역할을 해 준다.

▣ 어노테이션 ( Annotation )

스프링부트를 시작하면 처음부터 보게 되는 것이 어노테이션( Annotation )이다.

어노테이션은 `@`기호와 함께 사용하며, 자바 코드 위에 작성하여, 스프링부트에 코드의 역할을 알려준다.

대표적으로 많이 보는 어노테이션은 @Controller, @GetMapping, @Service 일 것이다.

스프링부트에서 언급하는 객체는 보통 클래스라 생각하면 머리 속이 편해진다.

즉, 
스프링부트에서 얘기하는 어노테이션은
객체( 클래스 )에 지정하고, 작성하여,
스프링부트에게 객체의 역할을 알려주고,
자동으로 객체를 생성하고 연결하고 실행하는 연결을 한다.

구구절절 어렵게 얘기했지만,
쉽게 얘기하면 클래스를 자동으로 생성해 주고 연결해 준다고 생각하자.

이 부분은 의존성 주입과 관련 있으며,
가끔 어노테이션이 지정되어 있지 않거나 잘못 기재되어 있다면,
의존성 주입과 관련된 오류를 볼 수 있다.


▣ 어노테이션 ( Annotation ) 종류

이제 스프링부트에서 객체의 역할을 정하는 어노테이션에 대한 종류를 살펴보자.

어노테이션의 종류는 많지만, 자주 사용하는 것부터 살펴보자.

물론, 코드를 만들고 자신만의 서비스를 만들고, 유지보수를 하다보면 다 알게 되는 것들이다.

더욱이 지금은 굳이 찾지 않아도 AI 서비스를 이용하면 금방 구현할 수 있고, 설명 등을 찾아볼 수 있다.

  • @Controller
    • 사용자의 요청에 대해 웹 화면을 클라이언트( BackEnd )에 전달한다.
  • @RestController
    • 웹/앱 통신을 위한 RestAPI를 만들고, JSON 데이터를 클라이언트( BackEnd )에 문자열로 전달한다.
  • @Service
    • 데이터를 계산, 가공, 검증 등의 로직을 구성하고, 호출한 곳에 데이터와 결과를 전달한다.
  • @Repository
    • DB 접근을 담당하고, DB에 데이터 처리를 요청다.
  • @Mapper
    • SQL 쿼리문 이용해 DB에 데이터 처리를 위한 요청한다.
  • @Component
    • 다른 어노테이션들의 최상위 독립적 객체,

▣ 사용 방법

어노테이션은 스프링부트의 객체, 클래스, 함수 위에 작성하고 역할을 부여한다.

스프링부트는 어노테이션을 읽고, 객체, 클래스, 함수 등의 역할을 인지하고,
객체를 생성하고 연결하며, 연관된 객체끼리 연결하여 실행할 수 있도록 한다.

위에서 언급한 어노테이션에 대한 간단한 사용법은 다음과 같다.


@Controller

사용자의 요청에 대해 웹 화면을 클라이언트( BackEnd )에 전달한다.

@RestController

웹/앱 통신을 위한 RestAPI를 만들고, JSON 데이터를 클라이언트( BackEnd )에 문자열로 전달한다.

@Service

데이터를 계산, 가공, 검증 등의 로직을 구성하고, 호출한 곳에 데이터와 결과를 전달한다.

@Repository

DB 접근을 담당하고, DB에 데이터 처리를 요청다.

@Mapper

SQL 쿼리문 이용해 DB에 데이터 처리를 위한 요청한다.

@Component

다른 어노테이션들의 최상위 독립적 객체,

댓글

타입스크립트 기본 타입 종류 | 변수 함수 객체 등에 지정하는 자료형

이미지
타입스크립트( Typescript )의 특징은 변수, 함수, 객체 등에 데이터 타입을 지정하여 오류를 줄이는 역할을 한다. 관대한 자바스크립트( Javascript )의 변수 지정에 데이터 타입을 지정하는 것이 타입스크립트이다. 자바스크립트에서는 변수에 어떤 값이든 자유롭게 넣을 수 있지만, 타입스크립트는 변수, 함수, 객체에 들어갈 값의 종류를 미리 지정할 수 있다. 자바 또는 C# 과 같은 언어들에 데이터 타입을 지정하는 것과 같다고 볼 수 있다. 타입스크립트의 타입에는 여러 종류가 있다. 굳이 나열하면 string, number, boolean, array, object, null, undefined, any, unknown, union, void 가 있다. 타입스크립트 기본 타입 종류 | 변수 함수 객체 등에 지정하는 자료형 ⊙ 타입스크립트 기본 타입 종류 타입스크립트는 자바스크립트에 자료형을 지정한 것이라 볼 수 있으며, 이것을 타입( type )이라 칭한다. 자바스크립트가 자료형에 관대한 특징이 있기 때문에, 의도하지 않은 코드 동작의 오류가 발생할 수 있다. 예를 들어, 자바스크립트의 + 연산자가 대표적인데, + 연산자는 숫자간 덧셈 연산도 하지만, 문자열에 + 가 들어간 경우 문자열 연결 동작을 하기 때문이다. 이 외에도 여러가지 경우들이 있다. 구구절절 말은 많았지만, 자바 또는 C# 처럼 자료형( 데이터 타입, data-type )을 지정한다고 보면 이해가 쉽다. 타입스크립트의 타입 자료형에는 여러가지가 존재하는데 그 중 일부는 다음과 같다. string : 문자열 number : 숫자 boolean : 참/거짓 array : 배열 string[] : 문자열 배열 number[] : 숫자 배열 type : 타입 별칭 interface : 객체 구조 string | number : 문자열 또는 숫자 object : 객체 타입 null : 값이 비어 있음 undefined : 값이 할당되어 있지 않음 any : 아무 타입이나 가능 unknown ...

이 블로그의 인기 게시물

ChatGPT Codex GitHub 연결 해제 방법 (앱 삭제까지 정리)

C언어 return 종류와 차이 | return, return 0, return -1, return n

챗지피티 코덱스와 깃허브 연동 방법 | VSCode 사용하기