개발/프레임워크&라이브러리

· ETC
Tistory Toc 추가하는 방법 종강도 했겠다 블로그를 조금 꾸며보고 싶어서 TOC를 추가하기로 했다 tistory-table-of-contents를 참고해서 만들었는데 메뉴얼도 잘되어 있고, 적용하기 찹 쉽다 내 메인 테마가 Tistory의 #1 테마인데 TOC 기준이 되는 테마가 딱 #1이어서 매우 굳이었다 내 입맛에 맞도록 수정해보자 처음 TOC를 설정하면, TOC가 왼쪽 상단에 적용 된 것을 볼 수 있다 일단 TOC를 오른쪽 상단에 위치시키고, 글씨 색도 Blue 계열로 바꾸고 싶었다 내 요구사항은 CSS만 변경하면 쉽게 적용 할 수 있는 것들이었다 TOC 위치 변경방법 /* custom card style */ .toc-app-common { display: inline-block; padd..
· DEV/Backend
오프셋 기반 페이지네이션 오프셋 기반의 페이지네이션은 페이지를 조회하기 위해 오프셋(offset)과 크기(size)를 사용하는 방식입니다. 이 방식은 특정 페이지의 데이터를 요청할 때, 이전 페이지까지의 데이터를 스캔해야 하는 단점이 있습니다. 이에 따라 성능 이슈가 발생할 수 있습니다. 오프셋 기반의 페이지네이션 구현 레포지터리 구성 먼저 오프셋 기반의 페이지 구성을 사용하도록 레포지터리를 구성해야 합니다. 레포지터리 인터페이스에서 findAllBy 메서드를 정의합니다. public Page findAllByMemberId(Long memberId, Pageable pageRequest) { var params = new MapSqlParameterSource() .addValue("memberId",..
· DEV/Java
Spring MVC의 Redirect와 Forward 웹 애플리케이션 개발에서는 한 웹 페이지에서 다른 웹 페이지로 네비게이션해야 하는 상황이 발생합니다. Spring MVC에서는 이를 리다이렉트와 포워딩을 통해 구현할 수 있습니다. Redirect 리다이렉트는 두 번의 요청과 두 번의 응답을 포함합니다. 리다이렉트가 발생하면 다음과 같은 과정을 거칩니다 클라이언트가 서버에 요청을 보냅니다. 서버는 클라이언트에게 응답을 보내 다른 URL로 새로운 요청을 보내도록 알립니다. 클라이언트는 지정된 URL로 새로운 요청을 보냅니다. 서버는 새 URL로부터 클라이언트에게 응답을 보냅니다. 리다이렉트는 클라이언트에서 서버로의 두 번의 왕복을 포함하기 때문에 포워드보다 느립니다. Forward 리다이렉트와 달리 포워..
· DEV/Java
DispatcherServlet DispatcherServlet은 Spring MVC 프레임워크의 핵심 요소 중 하나로, 모든 HTTP 요청을 최초로 받아들이는 ‘프론트 컨트롤러’ 역할을 합니다. Spring의 web MVC 프레임워크의 중앙 서블릿인 DispatcherServlet는 클라이언트의 요청을 받아 적절한 컨트롤러에게 전달하고, 그 컨트롤러에서의 처리 결과를 바탕으로 적절한 뷰를 선택해주는 중요한 역할을 합니다 DispatcherServlet의 주요 역할은 다음과 같습니다: 요청 분석: 클라이언트로부터 오는 HTTP 요청을 분석합니다. 핸들러 매핑: 분석된 요청을 해당하는 컨트롤러에게 전달하기 위해 핸들러 맵핑을 수행합니다. 요청 처리: 매핑된 컨트롤러가 요청을 처리하고 결과를 반환하면, Di..
· DEV/Java
Spring은 어떻게 매개변수만 적으면 라우팅을 해주는걸까 Spring의 라우팅은 URI가 서버의 특정 리소스에 직접 연결된 기존 웹 애플리케이션과 상당히 다릅니다. 대신 Spring은 들어오는 웹 요청을 처리하는 방법을 결정하기 위해 컨트롤러, 메소드 및 주석 시스템을 사용합니다. Understanding Controllers and Request Mapping Spring에서 컨트롤러는 들어오는 웹 요청을 처리하는 클래스입니다. 클래스에 @Controller 주석을 추가하여 컨트롤러로 지정됩니다. 이러한 컨트롤러 클래스 내에서 다양한 유형의 요청을 처리하기 위한 메서드가 정의됩니다. 이러한 메서드는 @RequestMapping 주석을 사용하여 특정 URL 또는 URL 패턴에 매핑됩니다. 예를 들면 다..
· DEV/Java
Spring MVC에서 @ModelAttribute 이해하기 Spring MVC의 @ModelAttribute 주석은 메소드 인수 또는 메소드 반환 값을 명명된 모델 속성에 바인딩하여 웹 뷰에 노출하는 데 사용됩니다. @ModelAttribute 주석은 다음 두 가지 주요 시나리오에서 사용할 수 있습니다: 1. 메소드 인자 이 시나리오는 주로 양식 처리와 관련이 있으며, 여기서 객체가 요청 매개 변수로 채워진 후 메소드로 전달됩니다. 채워진 객체는 자동으로 모델에 추가됩니다. 예를 들어 사용자가 개인 정보를 제출할 수 있는 양식 페이지를 만들고 있는 상황입니다 우리는 다음과 같은 User 클래스를 가지고 있습니다 public class User { private String name; private St..
· DEV/Java
Servlet Filter Servlet 필터는 Java Servlet 기술의 핵심 기능 중 하나로 웹 애플리케이션에서 요청과 응답을 가로채고 처리할 수 있습니다. 필터는 요청과 응답에 대해 전처리와 후처리 작업을 수행하며, 필요한 경우 수정할 수도 있습니다. 필터는 중복 코드 없이 여러 서블릿에 공통 기능을 적용할 수 있는 방법을 제공함으로써 웹 애플리케이션 작업의 효율성과 효과성을 크게 향상시킵니다. 다음은 Servlet 필터에 대한 주요 포인트를 간결하게 정리한 내용입니다: 주요 특징 구현: 필터는 javax.servlet.Filter 인터페이스를 구현하는 Java 클래스입니다. 다중 필터: 웹 애플리케이션에 여러 필터를 사용할 수 있으며, 필터 매핑 구성에 따라 정의된 순서대로 실행됩니다. 등록 ..
· DEV/Java
Servlet의 상태 정보 저장 Servlet의 상태 정보는 크게 4가지가 있다. 어플리케이션, 페이지 컨텍스트, request, 세션 저장소인데, 공부하면서 브라우저에서 쓰이는 것도 동일하지 않나 싶었다 1. 페이지 컨텍스트(Page Context) 현재 페이지의 지속 시간 동안 사용 가능한 저장 영역입니다. 페이지 내에서 여러 번 액세스되는 데이터를 저장하는 데 사용되지만 페이지를 넘어 지속될 필요는 없습니다. 페이지 컨텍스트에 저장된 데이터는 다른 페이지나 구성 요소에서 사용할 수 없습니다. 이는 저장소들 중 가장 좁은 범위이며 저장된 데이터는 현재 페이지 처리가 완료되면 지워집니다. 요청 저장소(Request) 이 저장소 영역은 현재 HTTP 요청 기간 동안 사용할 수 있습니다. 서블릿에서 JSP..
· DEV/Java
Spring MVC Spring MVC는 Spring Framework의 일부로서 웹 애플리케이션을 개발하기 위한 프레임워크입니다. MVC는 Model-View-Controller의 약자로, 소프트웨어 디자인 패턴 중 하나입니다. 이 패턴은 애플리케이션의 논리를 쉽게 이해하고, 개발하고, 유지보수하게 해주는 유용한 구조를 제공합니다. Spring의 View Rendering Spring의 View 렌더링하는 방법을 알아보겠습니다. 먼저 모델을 생성하고 채웁니다. 이 과정에서 애플리케이션에서 사용할 데이터를 수집하고 구성합니다 @Controller public class MyController { @RequestMapping("/somePath") public String handleRequest(Mode..
· DEV/Backend
Tomcat Tomcat이라고도 하는 Apache Tomcat은 Apache Software Foundation에서 개발한 오픈 소스 웹 서버 및 Servlet 컨테이너입니다. Tomcat은 Java Servlet, JSP(JavaServer Pages) 및 EL(Java Expression Language)을 포함하여 Java 플랫폼의 여러 핵심 기술을 구현합니다. Java 코드를 실행할 수 있는 “순수한 Java” 웹 서버 환경을 제공합니다. 톰캣의 특징 서블릿 컨테이너 본질적으로 Tomcat은 웹 애플리케이션에서 요청과 응답을 처리하는 작은 서버측 애플리케이션인 Java 서블릿을 실행하는 서블릿 컨테이너입니다. JSP 엔진 Tomcat에는 실행을 위해 JSP를 서블릿으로 변환한 다음 컴파일하고 나중..
berom
'개발/프레임워크&라이브러리' 태그의 글 목록