Jinsu's Technical Blog
  • 홈
  • 태그
  • 방명록
  • 메뉴 닫기
  • 글작성
  • 방명록
  • 환경설정
    • 분류 전체보기 (250)
      • Java (18)
      • Spring Framework (33)
        • Toby's Spring 3.1 (6)
        • Spring IoC (6)
        • TDD (6)
        • Reflection (6)
        • AOP (6)
      • Spring Boot (11)
      • Spring Security (22)
      • Database (17)
        • Mysql (2)
        • JDBC (2)
        • JPA (13)
      • Build and Development Tools (3)
        • Maven (1)
        • Gradle (1)
        • Lombok (1)
      • Network (12)
      • Apache Tomcat (11)
      • Microservices Architecture (33)
      • Linux (9)
      • React (10)
      • Docker (22)
      • OAuth (10)
      • DevOps (2)
      • Git (2)
      • HTML (1)
      • CSS (1)
      • JavaScript (1)
      • Problem and Solution Guide (8)
        • Java (1)
        • Spring Framework (4)
        • Reflection (1)
        • Dynamic Proxy (1)
        • JPA (1)
      • Note-Taking (23)
  • 홈
  • 태그
  • 방명록
Spring Boot

SLF4J의 로그 레벨

SLF4J의 로그 레벨은 로깅 메시지의 중요도와 우선순위를 설정하기 위한 개념입니다. 개발자가 원하는 수준의 로그만 출력하도록 제어할 수 있습니다.✅ SLF4J의 주요 로그 레벨SLF4J는 일반적으로 다음과 같은 5가지 로그 레벨을 제공합니다. (중요도 순서로 나열)레벨의미사용 예시TRACE가장 낮은 수준의 로그, 매우 상세한 디버깅 정보메서드 진입, 데이터 흐름 추적 등DEBUG디버깅을 위한 로그, 개발 중에 주로 사용변수 값 출력, 로직 확인 등INFO일반적인 정보 로그, 시스템의 진행 상태 출력서버 시작, 주요 이벤트 발생 등WARN경고 로그, 시스템에 잠재적 문제가 있을 경우리소스 부족, 예상치 못한 상황 등ERROR심각한 에러 로그, 애플리케이션 실행 중 치명적 오류예외 발생, 요청 실패 등✅ ..

2024. 12. 13. 16:14
Spring Boot

Thymeleaf

Thymeleaf는 자바 기반의 서버 템플릿 엔진으로, HTML을 사용하여 서버 측에서 데이터를 렌더링하는 데 사용됩니다. Spring Boot와 함께 사용될 때는 특히 MVC(Model-View-Controller) 패턴에 적합하여 정적 HTML 파일에 동적인 데이터를 삽입해 클라이언트에게 전달하는 방식으로 웹 페이지를 생성합니다. Thymeleaf의 주요 특징  1. HTML 친화적: • Thymeleaf는 HTML 파일에서 직접 템플릿 엔진 기능을 추가할 수 있는 태그 속성(th:text, th:href 등)을 제공합니다. • HTML 표준을 유지하면서, 브라우저에서 직접 확인할 수 있어 디자이너와 개발자 간의 협업에 용이합니다. 2. 서버 사이드 렌더링: • 클라이언트가 요청을 보낼 때 서버가 H..

2024. 10. 31. 16:47
Spring Boot

HikariCP

HikariCP는 고성능 JDBC Connection Pool로서, 자바 애플리케이션에서 데이터베이스와의 연결을 효율적으로 관리하는 데 사용됩니다. Spring Boot와 함께 자주 사용되며, 특히 빠르고 경량화된 설계로 인해 다른 connection pool에 비해 높은 성능을 자랑합니다. 이제 HikariCP에 대해 자세하게 설명드리겠습니다. 1. Connection Pool이란? Connection Pool(커넥션 풀)은 데이터베이스와의 연결을 재사용하여 성능을 높이는 기술입니다. 일반적으로 자바 애플리케이션은 데이터베이스와 연결하기 위해 JDBC를 사용하며, 데이터베이스와의 연결을 생성하고 종료하는 작업은 매우 비용이 많이 듭니다. 따라서 애플리케이션에서 매번 새로운 연결을 만드는 대신, 일정 수..

2024. 10. 22. 09:24
Spring Boot

Spring Data JPA

1. Spring Data JPA 시작하기 Spring Data JPA는 Spring 프레임워크와 JPA를 결합하여 데이터베이스 작업을 더 쉽게 만들어줍니다. 기존에 JPA만 사용할 때는 EntityManager를 직접 다루거나, 복잡한 쿼리를 작성하는 것이 필요했습니다. 하지만 Spring Data JPA는 이러한 과정을 추상화하여, 개발자는 필요한 인터페이스만 정의하면 자동으로 CRUD(생성, 조회, 수정, 삭제) 및 복잡한 쿼리를 처리할 수 있습니다. Spring Data JPA는 특히 간단한 방식으로 쿼리 메소드를 생성할 수 있다는 점에서 강력한 도구입니다. 2. 핵심 개념 (Core Concepts) JPA Entity JPA 엔티티는 자바 객체와 데이터베이스 테이블을 매핑하는 클래스를 의미합니..

2024. 10. 22. 09:21
Spring Boot

spring.factories

spring.factories는 Spring Framework에서 매우 중요한 파일 중 하나로, Spring Boot의 자동 구성 및 여러 확장 기능을 지원하기 위해 사용되는 메커니즘이야. spring.factories 파일은 Spring Boot 애플리케이션에서 특정 자동 구성 클래스나 리스너를 등록할 때, 그리고 여러 커스터마이징 지점을 제공하기 위한 설정 파일로 사용돼. spring.factories의 위치와 역할  • 위치: spring.factories 파일은 일반적으로 각 라이브러리의 META-INF/ 디렉토리에 위치해. 즉, 특정 라이브러리가 제공하는 Spring Boot 자동 구성 또는 기능 확장을 정의할 때, 이 파일을 META-INF/spring.factories 경로에 두는 방식으로 ..

2024. 10. 21. 16:59
Spring Boot

@Import

Spring Boot에서 사용하는 **@Import**는 Spring 프레임워크의 핵심 기능 중 하나로, Spring Boot에서 특히 자동 구성(Auto-Configuration) 및 외부 설정을 쉽게 관리할 수 있도록 도와줘. @Import 어노테이션은 여러 가지 방식으로 사용되며, 애플리케이션 컨텍스트에 특정 클래스나 설정 파일을 동적으로 추가하는 기능을 제공해. 특히 Spring Boot에서 자동 구성이나 외부 모듈 통합을 쉽게 구현하기 위해 자주 활용되지. 1. @Import의 기본 개념 @Import는 다른 설정 클래스나 빈을 현재 애플리케이션 컨텍스트에 포함시키기 위한 어노테이션이야. Spring Boot에서는 이를 통해 다양한 자동 설정 클래스나 외부 라이브러리 설정을 포함시켜 빈을 쉽게 ..

2024. 10. 21. 13:41
Spring Boot

Spring Boot의 Auto-Configuration

Spring Boot의 Auto-Configuration(자동 구성)은 Spring Boot가 제공하는 강력한 기능 중 하나로, 기본적인 설정을 자동으로 처리하여 개발자의 설정 부담을 크게 줄여주는 역할을 해. Spring Boot는 이를 통해 개발자가 수많은 설정을 수동으로 하지 않아도, 필요한 설정을 알아서 구성해주고, 기본적으로 적절한 동작을 하도록 애플리케이션을 자동으로 설정해. 이제 Auto-Configuration의 핵심 개념, 작동 원리, 그리고 실제 동작 방식을 완전하게 설명해 줄게. 1. Auto-Configuration의 정의 Auto-Configuration은 Spring Boot가 자동으로 여러 Spring 라이브러리나 컴포넌트를 설정하는 메커니즘이야. 특정 조건을 감지해서(예: 클..

2024. 10. 21. 12:30
Spring Boot

@SpringBootApplication

@SpringBootApplication은 Spring Boot 애플리케이션의 진입점에 주로 사용되는 애노테이션이야. 이 애노테이션은 여러 중요한 Spring 애노테이션들을 결합한 복합 애노테이션이어서, Spring Boot 애플리케이션을 편리하게 설정하고 실행하는 데 큰 역할을 해. 이제 하나씩 완전 자세하게 살펴볼게! @SpringBootApplication의 내부 구성 @SpringBootApplication은 사실 여러 애노테이션의 조합이야. 이 애노테이션은 다음과 같은 세 가지 애노테이션을 포함하고 있어:  1. @SpringBootConfiguration 2. @EnableAutoConfiguration 3. @ComponentScan 1. @SpringBootConfiguration  • 정..

2024. 10. 21. 12:22
Spring Boot

Spring Native

AOT vs JIT  1. AOT (Ahead-of-Time): • 코드가 실행되기 전에 미리 컴파일하는 방식이야. • 예를 들어, Java에서는 소스 코드를 바이트코드로 컴파일한 후, 다시 기계어로 변환하는 과정을 실행하기 전에 미리 수행하는 경우야. • 미리 컴파일된 결과물을 실행하기 때문에 런타임 성능이 향상될 수 있지만, 유연성이 떨어질 수 있어. 2. JIT (Just-In-Time): • 코드가 실행될 때 필요한 부분만 동적으로 컴파일하는 방식이야. • Java의 경우, 바이트코드를 실행하는 동안 JVM이 실행 중인 메서드를 JIT 컴파일러로 컴파일해서 기계어로 변환해. • JIT의 장점은 런타임에서 프로그램을 최적화할 수 있다는 것인데, 즉, 실행 중에 프로그램의 성능을 높일 수 있어. 하지..

2024. 10. 21. 11:46
Spring Boot

SpringApplication.run()

SpringApplication.run()은 Spring Boot 애플리케이션의 시작점으로, 애플리케이션을 실행하고 스프링 컨테이너를 초기화하는 역할을 해. 이 메서드는 Spring Boot의 핵심 중 하나로, 다양한 설정을 자동으로 해주고 애플리케이션을 간편하게 실행할 수 있게 해줘. SpringApplication.run()의 주요 역할:  1. SpringApplication 객체 생성 • SpringApplication.run() 메서드는 내부적으로 SpringApplication 객체를 생성해. 이 객체는 애플리케이션의 실행 환경을 설정하고, 그 설정을 바탕으로 애플리케이션을 부트스트랩(시작)하는 역할을 해. 2. 애플리케이션 컨텍스트 생성 • SpringApplication 객체가 생성되면 S..

2024. 10. 21. 11:14
Spring Boot

Spring Boot

1. Spring Boot란 무엇일까? Spring Boot는 스프링 프레임워크(Spring Framework) 기반의 개발 도구야. 스프링 프레임워크는 자바로 웹 애플리케이션이나 다양한 애플리케이션을 쉽게 만들 수 있게 도와주는 프레임워크인데, 스프링 자체는 설정할 것이 많아서 복잡할 수 있어. Spring Boot는 이런 복잡한 설정들을 자동으로 처리해주고, 쉽게 애플리케이션을 만들 수 있게 도와줘. 간단히 말하면: Spring Boot는 “자바로 웹 애플리케이션을 빠르고 쉽게 만들게 해주는 도구”라고 생각하면 돼. Spring Boot의 주요 특징  • 자동 설정(Auto-Configuration): Spring Boot는 대부분의 설정을 자동으로 해줘. 개발자는 필요한 최소한의 설정만 해도 돼. ..

2024. 10. 21. 10:40
  • «
  • 1
  • »

공지사항

  • Jinsu's GitHub

전체 카테고리

  • 분류 전체보기 (250)
    • Java (18)
    • Spring Framework (33)
      • Toby's Spring 3.1 (6)
      • Spring IoC (6)
      • TDD (6)
      • Reflection (6)
      • AOP (6)
    • Spring Boot (11)
    • Spring Security (22)
    • Database (17)
      • Mysql (2)
      • JDBC (2)
      • JPA (13)
    • Build and Development Tools (3)
      • Maven (1)
      • Gradle (1)
      • Lombok (1)
    • Network (12)
    • Apache Tomcat (11)
    • Microservices Architecture (33)
    • Linux (9)
    • React (10)
    • Docker (22)
    • OAuth (10)
    • DevOps (2)
    • Git (2)
    • HTML (1)
    • CSS (1)
    • JavaScript (1)
    • Problem and Solution Guide (8)
      • Java (1)
      • Spring Framework (4)
      • Reflection (1)
      • Dynamic Proxy (1)
      • JPA (1)
    • Note-Taking (23)

블로그 인기글

전체 방문자

오늘
어제
전체
Powered by Privatenote Copyright © Jinsu's Technical Blog All rights reserved. TistoryWhaleSkin3.4

티스토리툴바