[Spring] View Templates, mustache, thymeleaf란?
2024. 9. 29. 00:02
Information Technology/Spring
뷰 템플릿 (View Templates)화면을 담당하는 기술웹 페이지를 하나의 틀로 만들고 이곳에 변수를 삽입하게 한다.즉, 틀이 되는 페이지가 변수의 값에 따라서 수많은 페이지로 바뀔 수 있음Mustache수 많은 언어를 지원하는 가장 심플한 템플릿 엔진문법이 다른 템플릿 엔진보다 심플하고, 로직 코드를 사용할 수 없어 View의 역할과 Server의 역할이 명확하게 분리되는 장점이 있스프링 부트에서는 권장하지 않음Thymeleaf Java 기반의 현대적인, 서버 사이드 템플릿 엔진자바 라이브러리템플릿 엔진이란?스프링 서버에서 데이터를 받아 우리가 보는 웹 페이지, 즉 HTML 상에 그 데이터를 넣어서 보여주는 도구
[Spring] DI란 무엇인가?
2024. 9. 24. 17:38
Information Technology/Spring
DI (Dependency Injection) 란?소프트웨어 디자인 패턴 중 하나객체 간의 의존성을 줄여 코드의 유연성과 유지보수성을 높임// DI 사용 Xclass A { B b = new B(); // A가 B에 강하게 결합돼 있음 public void doSomething() { b.someMethod(); // B의 기능을 사용함 }}A 클래스가 B 클래스의 기능을 필요로 한다면 A가 B를 직접 생성해서 사용해야 함그러나 이 방법은 A와 B가 강하게 결합 됨즉, 나중에 B를 다른 걸로 교체, 확장성 저하, 유지보수, 테스트 등이 어렵게 됨A 클래스가 B 클래스의 메서드를 사용한다면, A는 B에 `의존` 하고 있다고 표현 함// DI 사용 Oclass A { p..
[Spring] 점프 투 스프링부트 - 2
2023. 7. 28. 02:01
Information Technology/Spring
Spring Boot Devtools 설치 HTML 삽입 미리보기할 수 없는 소스 - build.gradle 우클릭 > Refresh Gradle Project 클릭하여 필요한 라이브러리 다운로드 - Boot Dashboard에서 서버명이 nsbb > nsbb[devtools] 로 바뀌는 것 확인 롬복 설치 - https://projectlombok.org/download 로 가서 롬복 플러그인 다운로드 - 다운로드한 lombok.jar 파일을 STS 폴더에 넣고 롬복 파일 실행 - IDE 찾을 수 없다는 경고가 뜨면 [Specify location] 클릭 > STS 설치 경로 선택 - [Install / Update] 클릭하여 롬복 플러그인 설치 - [Quit Installer] 눌러 종료 HTML 삽..
[Spring] 점프 투 스프링부트 - 1
2023. 7. 26. 01:41
Information Technology/Spring
환경 설정 java version 20.0.2 STS 4.19.0 프로젝트 이름: NSBB (Namani Spring Boot Board) 컨트롤러 - 서버에 전달된 클라이언트의 요청 (URL과 전달된 파라미터 등)을 처리하는 자바 클래스 // 클라이언트 (Client): 웹을 사용하는 고객 // 서버 (Server): HTTP 서버, HTML 파일들을 모아놓고 서비스하는 컴퓨터 @Controller - 해당 클래스가 컨트롤러의 기능을 수행함 - 이 애노테이션이 있어야 스프링부트 프레임워크가 컨트롤러로 인식 함 @GetMapping("hello") @Controller public class HelloController { @GetMapping("/hello") @ResponseBody public St..
[Spring] MVC 패턴이란?
2023. 5. 13. 19:58
Information Technology/Spring
MVC 패턴이란? - 일종의 역할 분담, 객체별 역할을 나누면, 보다 깔끔한 코드 작성 및 관리에 좋음 - 데이터는 모델 (Model) - 화면은 뷰 (View) - 처리는 컨트롤러 (Controller) 가 나누어 담당함 모델 (Model) - 어떠한 동작을 수행하는 코드 - 사용자에게 어떻게 보일지에 대해 신경쓰지 않아도 됨 - 순수하게 public 함수로만 이루어 짐 - 몇몇 함수들은 사용자의 질의 (query)에 대해 상태 정보를 제공하고, 나머지 함수들은 상태를 수정함 뷰 (View) - 모델은 여러 개의 뷰 (view)를 가질 수 있음 - 뷰는 보여줄 값(모델)을 컨트롤러로부터 받아와 사용자에게 보여줌 컨트롤러 (Contoller) - 뷰는 여러 개의 컨트롤러 (contoller)를 가지고 있..