목록전체 글 (33)
채채
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/crlwCI/btrQD87SIvW/K7eLLiZR3yfnYuhwxBaLqK/img.png)
API를 만들기 위해선 3가지 클래스가 필요하다. Dto: request 데이터 수신 Controller: API 요청 수신 Service: 트랜잭션, 도메인 기능 간 순서 보장 Service에서는 비즈니스 로직(규칙에따라 데이터를 생성, 표시, 저장, 변경)을 처리하지 않는다. 그러면 비즈니스 로직은 누가 처리할까? ➡️ Spring 웹 계층 1. Web Layer 뷰 템플릿 영역 ex) 컨트롤러(@Controller), JSP/Freemarker 등 외부 요청과 응답 ex) 필터(@Filter), 인터셉터, 컨트롤러 어드바이스(@ControllerAdvice) 등 2. Service Layer @Service, @Transactional이 사용되는 영역 Controller와 Dao의 중간 영역 3. ..
JPA 소개 프로젝트에 Spring Data Jpa 적용하기 Spring Data JPA 테스트 코드 작성하기 등록/수정/조회 API 만들기 JPA Auditing으로 생성시간/수정시간 자동화하기 JPA 소개 JPA를 왜 사용하는지에대해 먼저 알아보고자한다. 현대의 웹 애플리케이션에서 관계형 데이터베이스는 빠질 수 없는 요소가 되었다. 관계형 데이터베이스가 SQL만 인식할 수 있다보니 각 테이블마다 기본적인 CRUD(Create, Read, Update, Delete) SQL을 매번 생성하다보면 결국 프로젝트의 대부분은 애플리케이션 코드보다 SQL로 가득하게 된다. 따라서 관계형 데이터베이스를 이용하는 프로젝트에서 객체지향 프로그래밍을 하기위해 JPA라는 자바 표준 ORM(Object Relation..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bd3c2k/btrQuHDjfzj/G9d6IgKsAsMqkRsHDqxz61/img.png)
인텔리제이 소개 인텔리제이 커뮤니티에서 프로젝트 생성 그레이들 프로젝트를 스프링 부트 프로젝트로 변경 인텔리제이에서 깃과 깃허브 사용 인텔리제이 소개 자바 웹 개발을 할 때에 이클립스를 주로 사용하는데, 인텔리제이 개발 도구를 사용하는 이유는 다음과 같은 장점이 있기 때문이다. 강력한 추천 기능 훨씬 더 다양한 리팩토링*과 디버깅 기능 이클립스의 깃에 비해 훨씬 높은 자유도 프로젝트를 시작할 때 인덱싱을 하여 파일을 비롯한 자원들에 대한 빠른 검색 속도 HTML, CSS, JS, XML에 대한 강력한 기능 지원 자바, 스프링 부트 버전업에 맞춘 빠른 업데이트 *리팩토링: 결과의 변경 없이 코드의 구조를 재조정함'을 뜻한다. 주로 가독성을 높이고 유지보수를 편하게 한다. 버그를 없애거나 새로운 기능..