Spring 5

[Spring] Spring Framework의 탄생과 기능 (下)

나다. 이 글이 뭐하는 글이냐면 [Spring] Spring Framework의 탄생과 기능 (上) 나다. 이 글이 뭐하는 글이냐면 우리는 자바를 통해 웹 프로젝트를 제작할 때 Spring이라는 프레임워크를 사용한다. 아주 오래된 시스템의 경우 스트럿츠2 라는 프레임워크를 사용하는 시스템이 no-brain-dev.tistory.com 이전 글에 이어 Spring 기능에 대해 설명하는 글임. 딱히 상편에서 하편으로 이어지는 구성은 아니기 때문에 굳이 상편으로 돌아가서 읽고 와야 할 필요는 없지만 한 번에 많이 쓰기 귀찮아서 두편으로 쪼개놨다. 상편도 궁금하면 가서 보셈. ^오^ MVC란 무엇인가. 지나가다 한 번쯤 MVC라는 말을 들어 본 적이 있는가. MVC는 (Model - View - Controll..

Spring 2023.01.26

[Spring] Spring Framework의 탄생과 기능 (上)

나다. 이 글이 뭐하는 글이냐면 우리는 자바를 통해 웹 프로젝트를 제작할 때 Spring이라는 프레임워크를 사용한다. 아주 오래된 시스템의 경우 스트럿츠2 라는 프레임워크를 사용하는 시스템이 있다고 하는데난 식견이 좁아 본 적 없음. 어쨌든 대부분 자바 진영의 경우 Spring으로 통일되어 있다 봐도 무방한 상태인데 혹자들이 "혐자정부 프레임워크"라 부르는 전자정부 프레임워크 또한 Spring을 기반으로 한다. 이번 글에서는 Spring Freamwork의 탄생 배경 기능에 대해 알아보자. BS(Before Spring) 의 시기 때는 바야흐로 2000년대 초반 Spring이 탄생하기 전 개발자들은 EJB라는 기술을 사용했다. EJB는 여러 장점을 가지고 있었으나 치명적인 단점들을 가지고 있었는데 개같이..

Spring 2023.01.23

[Spring] .properties와 .yml의 작성법에 대해 알아보자.

나다. 이 글이 뭐하는 글이냐면 스프링 부트를 사용하면 기본적으로 설정되는 파일인 application.properties를 본 적이 있지 않은가. 못 봤을 리는 없을 것이다. (못 봤으면 라섹수술 권장) 나는 처음 이 파일을 접했을 때 어플리케이션의 전반적 설정을 관장하는 파일로 이해하고 받아들였다. (허접 입장에서 봤을 때 사실 이게 반쯤 맞는 말이기도 함.) properties와 yml파일에서 지원하는 기능과 우선순위가 존X게 많지만 이번 글은그걸 알아보는게 아닌 그냥 작성법과 그 차이에 대해 알아보는 글이니 그건 설명하지 않겠다. 이 번 글에서는 application.properties와 application.yml의 작성법과 차이점에 대해알아보자. 이 블로그는 허접이 작성하는 블로그이기 때문에 ..

Spring 2022.12.15

[Thymeleaf] 변수 표현식이 뭔데요

나다. 이번 글 에서는 타임리프에서 변수를 사용하는 방법을 알아보자. 변수라 함은 동적페이지를 구성하는데 있어 필수적으로 사용되어야 할 요소이다. 위의 사진을 보라. 지금 두 개의 결과는 같지만 나중에 누군가 와서 "삼각형이 너무 개X만 하네? 크기 좀 키워줘" 라고 한다면 왼쪽의 코드는 그냥 i,j라는 변수만 몇개 찌끄리면 되지만 오른쪽의 코드는 하루종일 " * * * * *\n" 이 지X을 n번을 하고 있어야 하는 것이다. 퇴근도 못하고. 웹페이지를 구성 할 때도 똑같다. 나중에 쓸 Thyemleaf layout에서도 말하겠지만 그때 그때 변해야 하는 값들에 대해 변수를 사용해야 하는 것이 위와 같은 이유다. 물론 위의 예에서 나온 변수와 지금 설명할 변수는 조금 다른 개념이기는 하지만 언제 존X 많..

Thymeleaf 2022.12.14

Thymeleaf(타임리프) 에 대해 알아보자.

그래서 타임리프가 뭐임? Spring Boot에서 권장하는 강력한 ‘Natural template engine’ Thymeleaf는 웹 및 웹이 아닌 환경 모두에서 작동할 수 있는 Java XML/XHTML/HTML5 템플릿 엔진입니다. MVC 기반 웹 애플리케이션의 뷰 레이어에서 XHTML/HTML5를 제공하는 데 더 적합하지만 오프라인 환경에서도 모든 XML 파일을 처리할 수 있습니다. 대충 Johnna 강하다는 뜻. 간단하게 사용자가 요청한 페이지에 들어갈 값들을 뿌려주는 친구라고 생각하는 것이 이해하기 쉽겠다.(피자 토핑 뿌리듯이. 나는 포테이토 피자 좋아함.) 통상 자바에서 웹 개발을 할 때 JSP / JSTL를 이용한다. 진짜 좀 구린거 같음. //만약(if) 세션 안 멤버의 이름이 'jstl..

Thymeleaf 2022.12.13