Spring 2.x
XML 네임스페이스, AspectJ지원
https://standout.tistory.com/619
XML 네임스페이스
XML 네임스페이스 데이터를 구분하기 위한 방법 동일한 이름을 갖는 요소/속성을 서로 다은 이름으로 구분할 수 있다. XML in a Nutshell O'Reilly XML in a Nutshell Pearson XML in a Nutshell O'Reilly XML in a Nutshell Pe
standout.tistory.com
https://standout.tistory.com/617
AspectJ란?
AspectJ 자바언어에 측면 지향 프로그래밍(Aspect-Oriented Programming, AOP)기능을 추가한 프레임워크 로깅, 트랜잭션 관리, 보안 등의 부가 기능을 애플리케이션 코드와 분리하여 적용 aspect LoggingAspect { p
standout.tistory.com
Spring 3.x
@Configuration @Bean 어노테이션을 지원
Bean을 XML 형태로 관리
RestTemplate지원
어노테이션을 이용한 DI 지원(클래스/메소드위에 어노테이션을 사용해 의존성주입설정)
HSQL, H2, Derby 같은 내장 자바 데이터베이스 엔진을 편리하게 지원
https://standout.tistory.com/484
Annotation - @Configuration
@Configuration Spring Framework가 해당 클래스를 구성 클래스로 인식하고 구성을 위해 사용한다. 다른클래스에서 @Autowired로 Bean을 부를 수 있다. import org.springframework.context.annotation.Bean; import org.springframe
standout.tistory.com
https://standout.tistory.com/474
Annotation - @Bean @Scope
@Bean 빈은 Spring 컨테이너에서 생성되고 관리되는 객체 개발자가 직접 제어가 불가능한 외부 라이브러리등을 Bean으로 만들려할 때 주로 사용된다. @Configuration public class MyConfiguration { @Bean public MyBe
standout.tistory.com
https://standout.tistory.com/621
RestTemplate이란?
RestTemplate RestTemplate는 RESTful 웹 서비스를 호출하기 위한 자바에서 제공하는 클래스 RestTemplate restTemplate = new RestTemplate(); String url = "https://jsonplaceholder.typicode.com/todos/1"; Todo todo = restTemplate.getForObject
standout.tistory.com
https://standout.tistory.com/605
HSQLDB란?
HSQLDB HSQLDB(HyperSQL DataBase) 자바 기반의 오픈소스 관계형 데이터베이스 관리 시스템(RDBMS) 메모리나 디스크상에 데이터를 저장 작은 규모의 프로젝트나 개발자들이 쉽게 사용할 수 있다. org.hsqldb hs
standout.tistory.com
Spring 4.x
Java 8 기능을 완전히 지원하는 최초의 버전
람다 표현식과 메소드 참조가능
Groovy DSL을 이용하여 외부 빈 설정 정의가능
XML 빈 정의를 보다 간결한 구문을 허용
@Autowire 주석을 생성자에 적용할 수 있다 (Spring 3.x 에서는 setter 주입을 권장)
@RestController 사용가능(@ResponseBody, @RequestMapping를 매번 메소드에 추가할 필요가 없음)
AsyncRestTemplate 클래스지원(비동기식 응답처리)
WebSocket, SockJS 및 STOMP에 대한 지원추가
https://standout.tistory.com/622
람다함수란?
람다 함수는 함수를 간결하게 표현하는 방법 // 일반 함수 예시 public int add(int a, int b) { return a + b; } // 람다 함수 예시 (IntBinaryOperator) (a, b) -> a + b;
standout.tistory.com
https://standout.tistory.com/623
메소드 참조란?
람다 표현식에서 코드의 재사용성을 높이기 위해 사용 코드의 가독성과 간결성을 높일 수 있다. :: 메소드를 참조하는 데 사용되는 연산자 List names = Arrays.asList("Alice", "Bob", "Charlie"); names.stream().ma
standout.tistory.com
https://standout.tistory.com/603
Annotation - @RestController
@RestController @Controller 어노테이션과 @ResponseBody 어노테이션을 합쳐 놓은 것 컨트롤러 클래스 내의 모든 메서드가 @ResponseBody 어노테이션을 생략하고 반환 RESTful 웹 서비스에서 JSON, XML과 같은 데이
standout.tistory.com
Spring 5.x
non-blocking과 함수형 프로그래밍지원
reactive stream의 구현을 할 수 있는 Spring WebFlux 지원
공식적으로 Kotlin을 지원과 JUnit 5를 지원
기본적으로 Java 8 기반, Java 9와 함께 동작하도록 설계
Spring Framework 5에는 Java 8 이상이 필요
'JAVA > Spring' 카테고리의 다른 글
Spring MyBatis와 MyBatis 의 차이 (0) | 2023.06.25 |
---|---|
Spring Framework vs Spring Boot 차이 (0) | 2023.06.08 |
RestTemplate이란? (0) | 2023.05.10 |
Annotation - @RestController (0) | 2023.05.10 |
Annotation - @RequestBody @ResponseBody (0) | 2023.05.10 |