반응형

Spring Data JPA를 사용한 멀티테넌시

1. 개요 멀티테넌시는 소프트웨어 애플리케이션의 단일 인스턴스가 여러 테넌트 또는 고객에게 서비스를 제공 하는 아키텍처를 나타냅니다 . 테넌트가 사용하는 데이터와 리소스가 다른 것과 분리되도록 테넌트 간에 필요한 수준의 격리가 가능합니다. 이 사용방법(예제)에서는 Spring Data JPA를 사용하여 Spring Boot 애플리케이션에서 다중 테넌시를 구성하는 방법을 살펴봅니다. 또한 JWT 를 사용하여 테넌트에 Security을 추가합니다 . 2. 멀티 테넌시 모델 다중 테넌트 시스템에는 세 가지 주요 접근 방식이 있습니다. 별도의 데이터베이스 공유 데이터베이스 및 별도의 스키마 공유 데이터베이스 및 공유 스키마 2.1. 별도의 데이터베이스 이 접근 방식에서 각 테넌트의 데이터는 별도의 데이터베이스 ..

Spring 2022.12.05

Spring MVC 및 Thymeleaf를 사용한 CSRF 보호

1. 소개 Thymeleaf 는 HTML, XML, JavaScript, CSS 및 일반 텍스트를 처리하고 생성하기 위한 Java 템플릿 엔진입니다. Thymeleaf 및 Spring에 대한 소개는 이 글 을 살펴보십시오 . 이 기사에서는 Thymeleaf 애플리케이션을 사용하여 Spring MVC에서 CSRF(Cross-Site Request Forgery) 공격 을 방지하는 방법에 대해 설명합니다 . 보다 구체적으로 HTTP POST 방식에 대한 CSRF 공격을 테스트할 것입니다. CSRF는 최종 사용자가 현재 인증된 웹 애플리케이션에서 원하지 않는 작업을 실행하도록 하는 공격입니다. 2. 메이븐 의존성 먼저 Thymeleaf와 Spring을 통합하는 데 필요한 구성을 살펴보겠습니다. thymelea..

Spring 2022.12.05

Spring MVC 및 Spring Security를 사용한 Servlet 3 비동기 지원

1. 소개 이 빠른 사용방법(예제)에서는 비동기 요청에 대한 Servlet 3 지원과 Spring MVC 및 Spring Security가 이러한 . 웹 애플리케이션에서 비동기성에 대한 가장 기본적인 동기는 장기 실행 요청을 처리하는 것입니다. 대부분의 사용 사례에서 Spring Security 주체가 이러한 스레드로 전파되는지 확인해야 합니다. 물론 Spring Security 는 MVC 범위 밖에서 @Async 와 통합되고 HTTP 요청도 처리합니다. 2. 메이븐 의존성 Spring MVC에서 비동기 통합을 사용하려면 pom.xml 에 다음 의존성을 포함해야 합니다 . org.springframework.security spring-security-web 5.7.3 org.springframework..

Spring 2022.12.05

자바 XML 사용방법(예제)

1. 개요 이것은 Java에서 XML로 작업하는 방법에 대한 안내서 입니다. 구문 분석과 바인딩 모두에 대해 가장 일반적인 Java XML 처리 라이브러리 를 살펴보겠습니다 . 2. DOM 파서 간단히 말해서 DOM 파서는 전체 XML 문서에서 작동하여 메모리에 로드하고 문서의 트리 표현을 구성합니다. 2.1. 유용한 리소스 DOM 구문 분석을 사용하여 Java에서 XML 파일 작업 org.w3.dom.Document를 파일에 쓰기 자바에서 예쁜 인쇄 XML Java를 사용한 XPath 소개 dom4j를 사용하여 Java에서 XML 속성 수정 3. SAX 파서 SAX 파서는 이벤트 기반 파서입니다. 전체 문서를 메모리에 로드하지 않고 콜백을 사용하여 XML 문서를 파싱합니다. 3.1. 유용한 리소스 SA..

Spring 2022.12.05

Jackson으로 Null 필드 무시

1. 개요 이 빠른 예제은 Java 클래스 를 직렬화할 때 null 필드를 무시하도록 Jackson을 설정하는 방법을 다룰 것 입니다. 더 깊이 파고들어 Jackson 2와 관련된 다른 멋진 기능을 배우고 싶다면 기본 Jackson 예제 로 넘어갈 수 있습니다 . 2. 클래스의 Null 필드 무시 Jackson을 사용하면 클래스 수준에서 이 동작을 제어할 수 있습니다. @JsonInclude(Include.NON_NULL) public class MyDto { ... } 또는 필드 수준에서 더 세분화하여: public class MyDto { @JsonInclude(Include.NON_NULL) private String stringValue; private int intValue; // standar..

Spring 2022.12.05

스프링 @Autowired 사용방법(예제)

1. 개요 Spring 2.5부터 프레임워크는 어노테이션 기반 의존성 주입 을 도입 했습니다. 이 기능의 주요 어노테이션은 @Autowired 입니다. 이를 통해 Spring은 협업 빈을 해결하고 우리 빈에 주입할 수 있습니다. 이 예제에서는 먼저 자동 연결을 활성화하는 방법과 Bean을 자동 연결 하는 다양한 방법을 살펴보겠습니다 . 나중에 @Qualifier 어노테이션을 사용하여 빈 충돌을 해결하는 방법 과 잠재적인 예외 시나리오 에 대해 이야기하겠습니다 . 2. @Autowired 어노테이션 활성화 Spring 프레임워크는 자동 의존성 주입을 가능하게 합니다. 즉, Spring 구성 파일에서 모든 bean 의존성을 선언함으로써 Spring 컨테이너는 협력 bean 간의 관계를 자동으로 연결할 수 있..

Spring 2022.12.05

스프링 @PathVariable 어노테이션

1. 개요 이 빠른 사용방법(예제)에서는 Spring의 @PathVariable 어노테이션 을 살펴보겠습니다 . 간단히 말해서 @PathVariable 어노테이션을 사용 하여 요청 URI 매핑에서 템플릿 변수를 처리 하고 이를 메서드 매개변수로 설정할 수 있습니다. @PathVariable 및 다양한 속성 을 사용하는 방법을 살펴보겠습니다 . 2. 간단한 매핑 @PathVariable 어노테이션 의 간단한 사용 사례는 기본 키로 엔터티를 식별하는 엔드포인트입니다. @GetMapping("/api/employees/{id}") @ResponseBody public String getEmployeesById(@PathVariable String id) { return "ID: " + id; } 이 예에서는 ..

Spring 2022.12.05

로마 RSS 빠른 사용방법(예제)

1. 개요 RSS(Rich Site Summary 또는 Really Simple Syndication)는 다양한 위치에서 집계된 콘텐츠를 독자에게 제공하는 웹 피드 표준입니다. 사용자는 자신이 좋아하는 블로그, 뉴스 사이트 등에 최근 게시된 내용을 모두 한 곳에서 볼 수 있습니다. 응용 프로그램은 RSS를 사용하여 RSS 피드를 통해 정보를 읽거나 조작하거나 게시할 수도 있습니다. 이 문서에서는 Rome API를 사용하여 Java에서 RSS 피드를 처리하는 방법에 대한 개요를 제공합니다. 2. 메이븐 의존성 Rome API에 대한 의존성을 프로젝트에 추가해야 합니다. rome rome 1.0 Maven Central 에서 최신 버전을 찾을 수 있습니다 . 3. 새 RSS 피드 만들기 먼저 SyndFeed..

Spring 2022.12.05

Spring Batch 4.2.4: 실행 컨텍스트를 역직렬화할 수 없습니다.

Spring Batch 4.2.4: 실행 컨텍스트를 역직렬화할 수 없습니다. 1. 질문(문제점): spring-batch:4.2.2.RELEASE의 일부로 사용 하고 있었습니다 spring-boot-starter-batch:2.2.4.RELEASE. 후자를 버전 2.3.1.RELEASE으로 업그레이드한 후 작업을 시작할 때 다음 예외가 발생합니다. java.lang.IllegalArgumentException: Unable to deserialize the execution context at org.springframework.batch.core.repository.dao.JdbcExecutionContextDao$ExecutionContextRowMapper.mapRow(JdbcExecutionCon..

Spring 2022.12.04

존재하지 않는 메서드를 호출하려고 했습니다. 다음 위치에서 시도했습니다.

존재하지 않는 메서드를 호출하려고 했습니다. 다음 위치에서 시도했습니다. 1. 질문(문제점): Spring boot JPA Gridle project. _ 현재 Swagger실행 중이며 진행 중 오류가 발생합니다 DTO. 모듈이 서로 충돌하는 것 같습니다. swagger모듈을 설치하고 swagger를 진행하여 DTO용 모듈을 설치하면 오류가 발생합니다 . 다음 모듈은 오류를 생성합니다. compile 'org.springframework.boot:spring-boot-starter-hateoas' 그리고 오류는 다음과 같습니다. Error starting ApplicationContext. To display the conditions report re-run your application with 'd..

Spring 2022.12.04
반응형