AR삽질러

Spring기초 설명 본문

JAVA/Spring

Spring기초 설명

아랑팡팡 2023. 4. 3. 01:29
728x90

Spring기초 설명

다형성(Polymorphism)
 - 객체지향프로그램 OOP(Object Oriented Programing)
 - 다형성은 하나의 객체가 여러가지 형태를 가질 수 있는 것으로 객체가 다른 객체들과 호환성을 
 가지며 자신만의 역할을 수행할 수 있다.

오버로딩(Overloading)
 - 같은 이름의 메소드를 매개변수의 개수나 타입을 다르게 정의하는 것.
 - 오버로딩을 사용하면 같은 이름의 메소드를 여러개 정의하여 메소드 호출시 매개변수에 따라 적절한 메소드를 선택하여 실행할 수 있다.

오버라이딩(Overriding)
 - 부모클래스의 메소드를 자식 클래스에서 재정의하여 사용하는것으로 
 자식 클래스에서 재정의한 메소드를 부모 클래스의 메소드를 대체하게 된다. 
 - 오버라이딩은 매소드의 이름, 매개변수, 반환값이 모두 같아야하고 오버라이딩을 통해 자식 클래스에서 부모 클래스의 메소드를 확장하거나 변경할 수 있다.
 - Spring에서는 DI를 통해 다형성을 구현하고 DI는 인터페이스를 통해 다양한 객체를 주입받고 AOP는 부가 기능을 쉽게 추가 할 수 있게 도와준다.

DI (Dpendency Injection)
 - DI는 의존성 주입으로 객체 생성과 관계설정을 개발자가 직접 하지않고 프레임워크가 대신 해주는 방식으로 Bean을 등록하고 필요한 클래스에서 Bean을 주입받아 사용한다.

AOP (Aspect Oriented Programing)
 - AOP는 여러 모듈에서 공통으로 사용하는 기능을 분리하여 모듈화하는 방식이다. AOP는 OOP의 한계를 보안하기 위해 등장해 로깅, 트랜잭션, 보안등 @Aspect애노테이션을 사용하여 구현한다.

CRUD : 데이터베이스에서의 데이터 조작작업
 Create : 데이터를 생성하는 작업
 Read    : 데이터를 조회하는 작업
 Update : 데이터를 업데이트하는 작업
 Delete : 데이터를 삭제하는 작업

@Repository
 - SpringFramework에서 데이터 접근계층(Data Access Layer)에서 사용되는 애노테이션으로 데이터베이스와 상호작용을 담당하는 DAO(Data Access Object)클래스이다.
 - @Repository 애노테이션으로 지정된 클래스를 자동 검색하여 Bean으로 등록해 등록된 객체는 Singleton scope로 생성된다. 

@Controller
 - @Controller 애노테이션으로 지정된 클래스는 @RequestMapping 애노테이션을 사용하여 URL매핑을 정의할 수 있다.

@Service
 - 비즈니스로직을 담당하는 서비스 클래스를 표시하는 역할을 한다.

@RequestMapping
 - 요청 URL과 Controller매서드를 매핑하는데 사용된다. @RequestMapping은 클래스와 메서드 모두 적용이 가능하고 클라이언트의 요청 URL과 어떤 메소드가 처리할지를 연결해주는 역할이다.
 - value : 요청 URL패턴을 지정한다.
- method : HTTP요청 메서드 타입을 지정한다.
 - params : 요청 파라미터를 지정한다.
 - headers : 요청 헤더 정보를 지정한다.
 - consumes : 소비할 미디어 타입을 지정한다.
 - produces : 생성할 미디어 타입을 지정한다.

@Autowired
 - SpringFramework에서 자동의존성주입을 해주는 애노테이션으로 객체간의 의존성관리 io(Inversion of Control)기능을 제공하여 @Autowired를 사용하여 자동으로 의존성을 주입받을 수 있다.
 - @Autowired 애노테이션을 사용하면 Spring컨테이너는 해당 클래스를 스캔해 자신이 주입할 수 있는 클래스를 찾아 의존성을 주입한다.

바인딩(Binding)
 - 바인딩은 사용자가 입력한 데이터를 객체의 필드에 매핑하는 것을 말한다.
 - 휍 폼에서 사용자의 입력데이터는 문자열 형태로 서버에 전송되어 문자열 데이터를 자바 객체의 필드에 바인딩하기 위해서는 자동 형변환이 필요하다. 
 - Spring에서는 @ModelAttribute애노테이션을 사용하여 객체를 생성하고 전송된 데이터를 객체의 필드에 매핑한다.








728x90
반응형
LIST

'JAVA > Spring' 카테고리의 다른 글

Spring-등급제회원_기본예제(1)  (0) 2023.06.27
Spring-객체지향이란?(용어정리)  (0) 2023.06.24
Spring게시판실습  (0) 2023.04.03
Spring Start  (0) 2023.03.24
Spring 설치 Hellow word! 띄우기!  (2) 2023.01.17