일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- java
- Python
- html
- 単語
- 디지몬
- Web
- CSS
- rails7
- 一日一つメソッド
- jsp
- vscode
- ruby
- 건담
- 인프런
- rails
- 자바
- nico
- Flutter
- 日本語
- 건담베이스
- springboot
- 연습문제
- メソッド
- DART
- Spring
- 반다이몰
- C로 시작하는 컴퓨터 프로그래밍4판
- javascript
- 비즈니스일본어
- 일본어
- Today
- Total
AR삽질러
Spring Start 본문
1. Spring
- 자바 애플리케이션 개발에 사용되는 기술이자 개발을 위한 오픈소르 프레임워크이다. spring을 활용하여 방대하고 복잡한 애플리케이션을 쉽게?할 수 있고 높은수준의 모듈성, 유연성, 확장성, 테스트 용이성을 제공한다.
- 스프링을 배우기위한 선수 지식!
1) Java기반 기술로 Java언어의 이해가 필수!
2) Java Data type
3) 객체지향의 개념
4) Servlet, JSP, HTML - (Spring MVC를 사용하여 애플리케이션을 개발한다.)
2. Spring Framework
- 일반적으로 Spring은 Spring Framework를 의미한다. spring프로젝트의 핵심 컨포넌트들을 제공하여 객체 지향적인 애플리케이션을 쉽게? 개발할 수 있다.
Spring지원
1) 의존주입(Dependency Injection : DI)지원
2) AOP(Aspect-Oriented Programing)지원
3) MVC(Model, View, Controller)웹 프레임워크 제공
4) JDBC, JPA 연동 기술 및 선언적 트랜잭션 처리 등의 DB연동 지원
5) 자바기반 어플리케이션 개발기능 지원(스케줄링, 메시지연동, email전송 등)
3. Spring Boot
- Spring프레임워크를 기반으로 프로젝트를 설정하고 개발과 배포가 쉽다. SpringBoot는 많은 부분에서 자동으로 설정해주고 애플리케이션을 위한 기본설정들을 제공해주기 때문에 Spring보다 편리하게 이용할 수 있다.
4. DI (Dpendency Injection)
- 객체가 의존 객체를 구하는 방법으로 객체 간의 의존성을 최소화하고 유연한 구조를 유지하기 위해 사용된다.
DI를 이용하면 객체간의 의존성을 외부에서 설정할 수 있어 객체를 생성하는 코드 내부에서 다른 객체를 생성하거나 의존성을 가지는 객체의 메서드를 직접 호출하는 등 직접적인 의존성 관리를 피할 수 있다.
- 의존하는 대상이 있다면 대상을 만드는 방법
1) 직접 생성
- 의존을 필요로 하는 클래스에서 의존 대상을 직접 생성하는 방식
- 의존을 필요로 하는 클래스를 생성하면 의존 객체도 자동으로 생성된다.
2) DI를 통해 생성
- 의존을 필요로 하는 클래스에 의존 대상을 주입해주는 방식 : 생성자 파라미터를 통해 필요한 객체를 주입받아 사용하는 방식으로 객체를 생성할 때 의존성을 설정할 수 있다.
- 어노테이션을 이용한 의존성 주입방식 : @Autowired 어노테이션을 이용하여 필요한 객체를 주입받아 사용하는 방식으로 Spring이 객체를 생성하고 필요한 의존성을 자동으로 주입해준다.
- Spring DI는 Assembler(조립기)의 역할 : DI패턴을 사용하여 의존 객체를 주입한다. 객체를 서로연결한다.
- Assembler(조립기)의 역할을 Spring으로 대체한다. : 필요한 객체를 생성, 생성한 객체에 의존을 주입, 객체가 제공하는 기능을 정의, 스프링은 Assembler와 다르게 범용 조립기이다.
5. @Autowired동작 순서
- 타입이 같은 빈 객체를 검색한다. -> 타입이 같은 bean객체가 하나면 그 객체를 사용한다.
- @Qualifier가 정의되어 있다면 같은 값을 갖는 bean객체다.
- 타입이 같은 bean객체가 두개 이상 존재하면 @Qualifier로 저징한 bean객체를 찾아 주입한다.
-> @Qualifier로 지정된 객체가 없다면 이름이 같은 bean객체를 찾는다.
6. @Resource를 사용한 의존 자동 주입
- Resource어노테이션은 bean의 이름을 검색하여 자동 주입 동작한다.
-> 자동주입대상에 @Resource어노테이션을 사용한다.
-> 스프링 설정파일에 <context:annotation-config />태그 추가
동작순서
-> name속성에 지정한 bean객체를 찾는다. 객체가 있다면 해당 객체를 주입하고 객체가 없다면 동일한 타입의 bean객체를 찾아 주입한다.
7. 자동주입과 명시적 의존주입의 관계
- 자동 의존주입보다 명시적 의존주입이 우선이다.
- 명시적 의존주입
<constructor-arg>
<property>
- 자동주입
@Autowired
@Resource
<context:annotation-config/>
'JAVA > Spring' 카테고리의 다른 글
Spring-등급제회원_기본예제(1) (0) | 2023.06.27 |
---|---|
Spring-객체지향이란?(용어정리) (0) | 2023.06.24 |
Spring기초 설명 (0) | 2023.04.03 |
Spring게시판실습 (0) | 2023.04.03 |
Spring 설치 Hellow word! 띄우기! (2) | 2023.01.17 |