스프링은 자바진영의 웹 어플리케이션 제작 지원을 도와주는 프레임워크다.
과거에 스프링을 공부하고 써본적이 있어서 금일 진행한 내용이 어렵게 느껴지진 않았다.
과거에는 서블릿이나 jsp 이런 기술들을 사용해서 웹을 제작하고 배포했었더라면
스프링은 그 기술들을 확장적용시켜 어노테이션 기반의 기술이 탄생했고, 그 외에도 스프링에서 내부적으로 지원해주는
라이브러리와 프레임워크들이 많아서 편리하게 웹을 개발하고 디자인 할 수 있다.
Spring MVC를 통해 모델과 뷰, 컨트롤러들을 분리시켜 편리하고 확장성있게 개발이 가능하다는 장점이 있다.
사용자는 Controller를 조작해서 model을 통해 데이터를 가지고 오고, 그 정보를 바탕으로 시각적 표현을 담당하는 view를 제어해 사용자에게 정보를 전달한다.
스프링에서는 JPA라는 것이 있는데, ORM과 관련이 있다.
ORM ? ( Object-Relational Mapping) - 객체와 관계형 데이터베이스 매핑, 객체와 DB의 테이블이 매핑을 이루는 것
- 객체가 테이블이 되도록 매핑시켜주는 프레임워크(Framework)
- 프로그램의 복잡도를 줄이고 자바 객체와 쿼리를 분리할 수 있으며 트랜잭션 처리나 기타 데이터베이스 관련 작업들을 좀 더 편리하게 처리할 수 있는 방법
- SQL Query가 아닌 직관적인 코드(메서드)로서 데이터를 조작할 수있음
JPA는 Java Persistence API의 줄인 말로, 앞서 설명한 ORM을 설명하기 위한 인터페이스를 모아둔 것으로 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스다.
이 JPA를 통해 스프링에서는 더욱 편리하게 데이터베이스와 연관된 작업을 진행할 수 있다는 장점이 있다.
오늘 이렇게 간단하게 Spring에 대해 학습한 시간을 가지게 되었다.
'TIL(Today I Learned)' 카테고리의 다른 글
Day.29 궁금한 점 질문, 그리고 이유 있는 코드 (0) | 2022.12.09 |
---|---|
Day.28 스프링 AOP를 정리하며.. (0) | 2022.12.07 |
Day.26 우테코 테크톡 (프로세스와 스레드)를 보고 지식 추가하기 - 작성중 (0) | 2022.12.02 |
Day.25 알고리즘 강의 문자열 chapter -끝- 그리고 CS (0) | 2022.12.01 |
Day.24 알고리즘 기초 String (0) | 2022.12.01 |