티스토리 뷰
Users
- This class takes the role of Model which dealing with Data
UsersAPIController
- Handle request of users and response
UsersService
- When the application starts, an instance which has @Service annotation is created.
- By default, It is a Singleton pattern
- Other Class, Service, Controller can be injected by using Dependency Injection.
UsersRepository (DAO - Data Acess Object)
- Control Database by using JPA.
- It extends JpaRepository<Database table, Id type>
- It should be Interface (implementation can be used in Test code as well)
- It should be a singleton pattern
DTO(Data Transfer Object)
- DTO를 통해 상태의 값을 주고 받으며 (데이터의 전달), persistence data 와의 통신을 위해 DAO(DB와 연동)를 사용한다.
Spring boot 파일 생성 또는 생성 후에 사용할 라이브러리
JPA - e.g List<Travel> findAllByOrderByTravelIdDesc(PageRequest page);
관계형 DB의 관리를 표현하는 자바API. Mybatis보다 사용률이 높다.
Gradle / Maven - build 위한 dependency를 따로 다운받고 실행하는 과정없이 바로 repository에서 가지고 와준다.
Lombok - getter, setter, toString, hashCode, equals() 등등 annotation만 붙이면 알아서 만들어준다. ㅣ
JSP - html 내에 Java 코드를 삽입해서 사용. 웹서버에서 동적으로 웹페이지를 생성하여 웹브라우저를 돌려주는 언어. Spring boot 에서는 JSP보다 Thymeleaf 권장.
Thymeleaf - html 내에 Java 코드를 삽입해서 사용.
MySQL
Web
MVC pattern
Entity class - 보통 그냥 이름을 적는다 e.g User. 실제 Database와 매칭되는 클래스. Data의 처리, 구조 표현.
Controller - 말그래도 컨트롤러.(domain controller class 라고도 한다) URL이 어디로 가서 어떤식을 처리되는지. 사용자의 입력을 처리Front End 기술에 대한 추상화를 지원. Front End 가 어떤 형태로 쓰여진 것인지 영향받지 않음.
Repository - DAO 역할을 한다. JPA이용해서 DB에 접근,컨트롤. Should be Singleton and Interface
Service - business logic. 단순히 Domain 이 반환한 결과를 Controller 에 전송하는 역할만 하는 것 처럼 보일 수 도 있지만, 그 domain의 객체들을 조합해서 처리 후에 반환한다거나하는 다양한 business logic을 나타낸다. Typically Business Service class is Singleton's
MVC(Model - View - Controller) 와 Service, Repository 는 다른 개념
MVC + Service + Repository 를 사용하는게 일반적.
DTO - (Data Transfer Object) data 의 전달과 이동 data전송 객체. DB가 아님. 데이터가 포함된 객체를 한 시스템에서 다른 시스템으로 전달하는 작업을 처리. Data에 접속하는 객체이다. 여기서 Data란 일반적인 Database도 될 수 있고, 파일도 될 수 있으며, 메모리도 될 수 있고, 기타 다른 저장소도 될 수 있다. 보안때문에 보내고 싶지않은 정보를 제외하고 DTO에 따로 빼내서 만든 Object이다. db와의 연결을 위해 ModelMapper 를 사용한다.
...Application - Main 메서드가 있는 가장 먼저 동작하는클래스
Validator - 비번이나 아이디에 들어 올 값을 validate 해준다
Reference
https://gmlwjd9405.github.io/2018/11/29/intellij-lombok.html
'Spring Boot' 카테고리의 다른 글
Constructor Injection (0) | 2019.03.08 |
---|---|
ModelMapper DTO-entity conversion (0) | 2019.03.08 |
Creating Spring Boot application with IntelliJ (0) | 2019.02.27 |
@RestController (0) | 2019.02.10 |
Dependency Injection (0) | 2019.01.30 |
- Total
- Today
- Yesterday
- hackerrank
- easy javascript algorithm
- equals()
- Javascript Algorithm
- java
- hackerrank javascript
- math.abs
- easy algorithm
- Object type casting
- code refactoring
- substring()
- C++
- math.max
- compareTo()
- spring boot application
- ... in Javascript
- 프로그래머스 알고리즘
- hackerrank javascript solution
- hackerrank solution
- 프로그래머스 알고리즘문제
- repeat()
- string class in java
- javascript
- HackerRank Algorithm
- rest parameter
- algorithm
- Collection Framework
- 알고리즘
- HashMap
- 프로그래머스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |