1. 템플릿 엔진 - 지정된 템플릿 양식과 데이터가 합쳐져 HTML 문서를 출력하는 소프트웨어 - ex ) JSP, Freemarker(서버템플릿 엔진), React, View(클라이언트 템플릿엔진) 자바스크립트에서 JSP나 Freemarker처럼 자바코드를 사용할 수는 없나요? FE의 자바스크립트가 작동하는 영역과 JSP가 작동하는 영역이 다르다. JSP 및 Freemarker은 주로 서버에서 동적 컨텐츠를 생성하고 이를 클라이언트로 보내는데 사용되는 서버 측 기술이고, 자바스크립트는 브라우저에서 실행되는 클라이언트 측 스크립트 언어이다. 서버에서 Java코드로 문자열을 만든 뒤 이 문자열을 HTML로 변환하여 브라우저로 전달하는데, 이 때 자바스크립트 코드는 단순한 문자열이기에 코드로서 동작하지 않는..
웹
보통 Entity에는 해당 데이터의 수정시간과 생성시간을 포함한다. 언제 만들어지고 수정되었는지는 차후 유지보수에 있어서 매우 중요한 정보이다 매번 DB에 삽입 전, 갱신 전에 날짜 데이터를 등록/수정하는 코드가 여기저기 들어가면 귀찮고 코드가 지저분 해짐. 이를 해결하고자 JPA Auditing을 사용 1. JPA Auditing Auditing을 사용하면 Entity를 누가 언제 생성/수정했는지 자동으로 기록하게 할 수 있다. 2. JPA Auditing 적용하기 1) BaseTimeEntity.java @Getter @MappedSuperclass @EntityListeners(AuditingEntityListener.class) public class BaseTimeEntity { @Created..
API를 만들기 위해서는 3개의 클래스가 필요하다. 1) Request 데이터를 받을 Dto 2) API 요청을 받을 Controller 3) 트랜잭션, 도메인 기능 간의 순서를 보장하는 Service 1. Spring 웹 계층 1) Web Layer - 흔히 사용하는 컨트롤러(Controller)와 JSP/Freemarker 등의 뷰 템플릿 영역 - 이외에도 필터(@Filter), 인터셉터, 컨트롤러(@ControllerAdvice) 등 외부 요청과 응답에 대한 전반적인 영역을 의미 2) Service Layer - @Service에 사용되는 서비스 영역 - 일반적으로 Controller와 Dao의 중간 영역에서 사용된다 - @Transactional이 사용되어야 하는 영역 * DAO : Data Ac..