본문 바로가기

개인 공부185

[Spring] Servlet, 서블릿 ✍️ 학습 목표 Servlet 이해하기 Servlet Container 알아보기 📌 Servlet MVC 패턴에서 사용되는 Controller는 Servlet을 활용한 기술이다. 따라서 MVC 패턴을 준수하는 스프링 공부하기 위해선 Servlet에 대한 이해도 필수적이다. Servlet이란? 클라이언트의 요청을 처리하고, 처리 결과로 반환해주는 Java 기반의 CGI이다. CGI : 웹 서버 상에서 User Program을 동작시키기 위한 조합 ✔️ Servlet의 특징 결국 Servlet은 기존 웹 서버의 문제를 개선하고 동적인 여러 기능을 지원한다. 너무 기계적으로 적어둔 글이 많아서 핵심만 요약했고, 내용은 다음과 같다. 클라이언트의 요청에 대해 정적으로 작동하던 기존의 웹 프로그램의 문제점을 보완.. 2022. 9. 15.
[Spring] Spring의 MVC ✍️ 학습 목표 MVC 패턴 이해하기 Spring의 MVC 📌 MVC 패턴 스프링은 MVC 패턴을 준수하는 프레임워크이다. 따라서, 스프링의 MVC 패턴을 이해하기 위해서는 먼저 MVC 패턴이 무엇인지 알아야한다. MVC (Model - View - Controller) 패턴은 소프트웨어 공학에서 사용되는 디자인 패턴이다. 이렇게 각자의 규칙과 역할을 가진 3개의 컴포넌트로 구성된 패턴을 MVC 패턴이라고 한다. ✔️ 모델, Model 애플리케이션의 정보, 데이터, DB 등을 담당하는 컴포넌트이다. 다음과 같은 규칙을 가진다. User가 원하는 모든 데이터를 가지고 있어야한다. View와 Controller에 대한 어떠한 정보도 알지 말아야한다. 변경이 발생하면 변경사항을 처리(수정, 전달 등) 할 수 .. 2022. 9. 14.
TIL : Lombok 알아보기 (12) 💻 Java Lombok이란? Java의 반복되는 메소드를 Annotation을 사용해 자동으로 작성해주는 라이브러리이다! 중요한 어노테이션 위주로 가볍게 살펴보자. 1️⃣ @Getter, @Setter 필드 혹은 클래스에 선언해서 사용한다. getField() (boolean 타입은 isField())와 setField() 메소드를 자동으로 생성 2️⃣ @NoArgsConstructor, @AllArgsConstructor, @RequiredArgsConstructor 생성자를 자동으로 생성해주는 어노테이션 @NoArgsConstructor : 파라미터가 없는 기본 생성자 @AllArgsConstructor : 모든 필드를 파라미터로 받는 생성자 @RequiredArgsConstructor : fina.. 2022. 9. 14.
TIL : @CreatedDate, @CreationTimestamp (11) 🌞 Spring 엔티티 클래스에서 시간을 2가지 방법으로 관리한다. 바로 Hibernate에서 제공하는 @CreationTimestamp과 JPA에서 제공하는 @CreatedDate. 둘의 차이를 알아보자!! 1️⃣ @CreatedDate & @LastModifiedDate 사용하기 위해선 2가지 설정이 필요하다! SpringApplication에 @EnableJpaAuditing을 붙인다. 선언한 엔티티에 @EntityListeners(AuditingEntityListener.class)를 붙인다. 설정이 필요한 이유는 다음과 같다. JPA는 JPA 고유 메모리 공간(context)을 이용해서 엔티티 객체들을 관리한다. 관리되는 객체들이 변경되면 데이터에 반영되는 형식이다. 즉, 재사용하는 방식이다. .. 2022. 9. 12.
데이터베이스 개론 : 관계 데이터 연산 (6장) 📌 관계 데이터 연산의 개념 데이터 모델은 데이터 구조, 연산, 제약조건이 3가지로 구성된다. 여기서 연산이란 원하는 데이터를 얻기 위해 릴레이션에 필요한 처리 요구를 수행하는 것이다. 관계 데이터 연산이라고 불리는 연산은 두 가지로 나뉜다. 관계 대수 : 원하는 결과를 얻기 위해 데이터 처리 과정을 순서대로 기술하는 절차 언어이다. 관계 해석 : 원하는 결과를 얻기 위해 처리를 원하는 데이터가 무엇인지만 기술하는 비절차 언어이다. 여기서 데이터에 대한 처리 요구를 Query(질의)라고 한다. 📌 관계 대수 ✔️ 관계 대수의 개념과 연산자 처리 과정을 순서대로 기술하는 언어인 관계 대수는 연산자들의 집합으로도 정의할 수 있다. 여기서 피연산자는 릴레이션이 된다. 따라서 결과물도 릴레이션이 될 것이다. 대.. 2022. 9. 7.
데이터베이스 개론 : 관계 데이터 모델 (5장) 📌 관계 데이터 모델의 개념 ✔️ 관계 데이터 모델의 기본 용어 관계 데이터 모델에서는 하나의 개체에 관한 데이터를 릴레이션 하나에 담아 데이터베이스에 저장한다. 릴레이션에 관한 용어를 알아보자. 1️⃣ Attribute 릴레이션의 열을 속성(Attribute)이라고 한다. 각 속성을 서로 다른 이름으로 구분하고 필드에 대응하는 개념이다. 2️⃣ Tuple 릴레이션의 행을 튜플이라고 한다. 개체에 대한 속성들을 모아둔 것이고 레코드에 대응하는 개념이다. 3️⃣ Domain 속성이 가질 수 있는 모든 값의 집합을 말한다. 이 값들은 더 분해될 수 없는 원자 값이다. 보통 데이터 타입을 도메인, 변수를 속성으로 이해하면 된다. 4️⃣ Null 값 속성 값을 모르거나 적합한 값을 모를 때 사용하는 특별한 값이.. 2022. 9. 7.