1. CS 스터디

CS 도서 [1일 1로그 100일 완성 IT지식]의 3부(통신) 챕터79 "곳곳에 도사리는 위험" 다양한 해킹 수법에 대한 내용으로 스터디 하였다.

  • 클라이언트 공격, 서버 공격
- 스팸(spam), 악성코드(malware)
- 피싱(phising)
- 스피어 피싱(spear phisihng), 소셜 엔지니어링(social engineering)
- 스파이 웨어(spyware), 봇(bot)
- 랜섬웨어(randsomeware)
- 스케어웨어(scareware)

2. Spring 강의 2,3주차 시청 및 실습

오늘은 본격적인 Spring 실습에 들어갔다. Spring 프로젝트의 기본적인 폴더구조 부터 Spring 프레임워크의 규칙 및 작동 방식 어노테이션(annotation)에 대해 배웠고 그것을 바탕으로 간단한 실습부터 "타임라인 서비스"까지 구현해보았다.

  1. Controller : 가장 바깥 부분, 요청/응답처리 (자동 응답기)
  2. Service : 중간 부분, 실제 주요 기능(메소드), 게시글 업데이트
  3. Repository : 가장 안쪽 부분, DB처리, DB에 직접 쿼리(데이터를 생성, 조회, 수정, 삭제 하기 위한 구문)
  4. DTO(Data Transfer Object) : 계층 간 데이터 교환을 하기 위해 사용하는 객체로, DTO는 로직을 가지지 않는 순수한 데이터 객체(getter & setter 만 가진 클래스)
  • Spring 프로젝트의 기본 폴더구조
  • SQL 사용해보기

    기본적인 SQL 문법에 대해 배우고 H2 콘솔에서 SQL 구문을 입력하여 저장, 조회를 실습하였다.

  • JPA(Java Persistence API) 실습해보기

    	- DB에 보다 쉽게 접근하기 위한 SQL 문법 또는 인터페이스 모음
  • 게시글 생성일자, 수정일자 저장하기 (Timestamped)

    Java에서 기본적으로 제공하는 LocalDateTime 모듈을 사용하여 게시글을 작성한 시간, 수정한 시간을 얻어내어 DB에 저장하였다.

  • 의존성 라이브러리 "Lombok" 사용해보기

    프로젝트 생성 시, 기본적으로 Lombok을 설치했지만 기능의 확장을 위하여 라이브러리 설정을 하였고 사용법에 대해 알아보았다.
    - 모델(model)클래스에 Getter, NoArgsConstructor 적용
    - 서비스(service)클래스에 RequiredArgsConstructor 적용

  • 게시글 GET, POST, PUT, DELETE 실습

    Modol, DTO, Repository, Controller, Service의 상호관계를 이해하고 CRUD 기능을 구현하였다.

  • 타임라인 서비스 구현

    위에서 실습한 기본기를 바탕으로 타임라인 서비스를 단순히 *API가 아닌 완전한 웹사이트로 구현해보았다. HTML, CSS, JavaScript 그리고 API.

0개의 댓글