Project를 생성할때 아래와 같이 Dependecies를 설정해준다. Spring 프로젝트와 다른 점은 Mustache가 꼭 필요하다.(Lombok은 필수는 아님)그리고 H2 Database를 사용함으로써 h2 console을 사용하게 된다.
JSP파일이 아니라 JPA를 통해 화면 구성을 하기때문에 src폴더가 아닌 resource폴더 안의 static폴더나 tampletes패키지를 만들어서 화면을 만든다. 이때, mustache는 html의 문법을 사용하게 된다.
JSP (JavaServer Pages)
목적: 웹 애플리케이션의 프레젠테이션 계층을 구성하기 위해 사용된다. HTML 코드에 Java 코드를 삽입하여 동적인 웹 페이지를 생성할 수 있다.
특징
- 서버 측에서 실행되어 HTML 콘텐츠를 생성한다.
- Java 코드와 HTML을 혼합하여 작성할 수 있다.
- JSP 파일은 일반적으로 .jsp 확장자를 가지며, 웹 서버에서 서블릿으로 변환되어 실행된다.
- JSTL(JavaServer Pages Standard Tag Library)과 같은 태그 라이브러리를 사용하여 코드의 복잡성을 줄일 수 있다.
JPA (Java Persistence API)
목적: 자바 객체와 관계형 데이터베이스 간의 매핑을 처리하여 데이터베이스의 데이터를 쉽게 관리할 수 있도록 한다.
특징
- 객체 지향 프로그래밍에서 데이터베이스 작업을 단순화한다.
- 엔티티(Entity)라는 자바 클래스를 사용하여 데이터베이스 테이블과 매핑한다.
- JPQL(Java Persistence Query Language)을 사용하여 데이터베이스 쿼리를 작성할 수 있다.
- Hibernate와 같은 JPA 구현체를 통해 사용된다.
요약
JSP는 웹 페이지의 프레젠테이션을 담당하며, JPA는 데이터베이스와의 상호작용을 관리한다.
JSP는 주로 사용자 인터페이스와 관련된 코드에 집중하고, JPA는 데이터의 영속성 및 데이터베이스 작업에 중점을 둔다.
📍HTML로 생성
위와 같이 html파일로 생성한 뒤 파일명을 NewFile.mustache로 수정해주면...
이렇게 자동으로 html의 EMMET기능이 적용된다.
📍mustache파일로 생성
file파일 생성할때 확장자명을 .mustache로 작성해서 생성한다.
🌿예시
index.html에서 아래와같이 주소를 설정한다.
<a href="/hi4">
@GetMapping("/hi4")
public String hi4(Model model) {
model.addAttribute("name","유진");
return "greetings4"; //greetings.mustache
}
{{>layouts/header}}
<!-- content -->
<p class="bg-dark text-white p-5">
{{name}}님 반갑습니다
</p>
{{>layouts/footer}}
- jsp에서는 ${}로 변수를 받았지만 mustache에서는 {{}}로 변수를 받게된다.
- <%@include="경로"%>대신 {{>경로}}로 표현한다.
'SPRING BOOT' 카테고리의 다른 글
[spring boot] Spring Security (0) | 2024.11.18 |
---|---|
restserver,restclient (0) | 2024.11.16 |
[spring boot]RestApi (0) | 2024.11.12 |
[spring boot] HTTP호출방식 (0) | 2024.11.11 |
[spring boot] JPA와 H2 데이터베이스로 간단한 게시판 만들기 (0) | 2024.11.09 |