본문 바로가기

개발중

(617)
[Spring] JSch 를 활용해 특정 서버에 파일 업로드하기 특정 서버에 파일 업로드하기 이 코드는 JSch 라이브러리를 사용하여 SFTP 프로토콜로 원격 서버에 접속하여 파일을 다운로드하는 기능을 구현한 것입니다. JSch는 Java에서 SFTP, SCP, SSH 등을 지원하는 라이브러리로, 이를 사용하여 원격 서버로 접속하고 파일을 다운로드합니다. JSch 객체를 생성합니다. JSch jsch = new JSch(); SFTP 서버에 접속하기 위한 Session 객체를 생성합니다. Session session = jsch.getSession("root", "210.118.213.148", 22); 호스트 키 체크를 하지 않도록 설정합니다. (보안상 권장하지 않습니다) session.setConfig("StrictHostKeyChecking", "no"); SF..
[Spring] JSch 를 활용해 특정 서버에서 파일 가져오기 특정 서버에서 파일 가져오기 이 코드는 JSch 라이브러리를 사용하여 SFTP 프로토콜로 원격 서버에 접속하여 파일을 다운로드하는 기능을 구현한 것입니다. JSch는 Java에서 SFTP, SCP, SSH 등을 지원하는 라이브러리로, 이를 사용하여 원격 서버로 접속하고 파일을 다운로드합니다. JSch 객체를 생성하고 SFTP로 접속할 세션을 설정합니다. JSch jsch = new JSch(); Session session = jsch.getSession("root", "111.111.111.111", 22); session.setConfig("StrictHostKeyChecking", "no"); session.setPassword("1234"); session.connect(); SFTP 채널을 열어..
[JPA] Entity 가 Update 되는 과정에 대해서 아니 JPA 에서 UPDATE 되는 과정 JPA(Java Persistence API)에서 업데이트 과정은 다음과 같이 이루어집니다: 1. 엔티티 조회 먼저 업데이트할 엔티티를 데이터베이스에서 조회합니다. 이는 주로 `EntityManager`를 사용하여 해당 엔티티를 조회하는 쿼리를 실행하는 방식으로 이루어집니다. 2. 엔티티 수정 조회한 엔티티를 수정합니다. 이때 JPA는 영속성 컨텍스트(Persistence Context)에서 관리하는 엔티티를 수정합니다. 수정은 엔티티의 필드를 변경하거나 메소드를 호출하여 이루어질 수 있습니다. 3. 트랜잭션 커밋 업데이트된 엔티티를 데이터베이스에 반영하기 위해 트랜잭션을 커밋합니다. 이때 JPA는 변경된 엔티티를 감지하고 해당 엔티티에 대한 UPDATE SQL 문을 ..
Swagger 2 와 Swagger 3의 차이점 알아보기 Swagger 2 와 Swagger 3의 차이점 알아보기 Swagger는 API 문서를 자동화하고 시각화하기 위한 도구입니다. Swagger 2와 Swagger 3 (OpenAPI 3)는 주로 스펙 및 기능 차이에 대한 업데이트가 있습니다. 이 차이점을 간략하게 살펴보겠습니다. 스펙 버전 Swagger 2는 Swagger 스펙 2.0을 따릅니다. Swagger 3 (OpenAPI 3)는 OpenAPI 스펙 3.0.x를 따릅니다. 구조 변경 Swagger 3에서 구조와 속성 이름이 변경되어 더 명확하고 간결해졌습니다. 새로운 데이터 유형 및 스키마 Swagger 3에서는 oneOf, anyOf, not 등의 추가 스키마 키워드를 사용할 수 있습니다. 이를 통해 API에서 다양한 유형의 데이터를 더 잘 정의..
Try to run Maven import with -U flag (force update snapshots) 에러 아래와 같은 에러 발생 ! Cannot resolve plugin org.apache.maven.plugins:maven-site-plugin:3.3 Try to run Maven import with -U flag (force update snapshots) 이 에러는 Maven이 org.apache.maven.plugins:maven-site-plugin:3.3 플러그인을 찾을 수 없다는 것을 나타낸다. 이 문제는 일반적으로 다음과 같은 이유로 발생한다. 인터넷 연결 문제 Maven은 원격 저장소에서 플러그인을 다운로드하려고 시도하며, 연결 문제가 있으면 실패합니다. 저장소 구성 문제 설정된 원격 저장소에 플러그인이 없거나 저장소 설정에 문제가 있을 수 있습니다. 캐시 실패 이전에 실패한 다운로드가 ..
RepackageMojo 이란 ? RepackageMojo RepackageMojo는 Spring Boot Maven 플러그인의 일부로, Spring Boot 애플리케이션을 실행 가능한 "fat" JAR 또는 WAR 파일로 패키징하는 작업을 수행한다. 이 "fat" JAR 또는 WAR 파일에는 애플리케이션 코드와 함께 모든 필요한 의존성이 포함되어 있어, 애플리케이션을 배포하거나 실행하기 쉽게 만든다. RepackageMojo가하는 작업 프로젝트의 모든 의존성을 포함하는 실행 가능한 JAR 또는 WAR 파일을 생성한다. 애플리케이션의 메인 클래스를 자동으로 검색하거나 사용자가 지정한 메인 클래스를 사용하여 실행 가능한 JAR 또는 WAR 파일의 메인 클래스를 설정한다. 결과물을 생성할 때 필요한 리소스 및 메타데이터를 포함한다. 이러한 ..
org.apache.maven.plugins 빨간줄 뜨며 에러가 난다면 ? 😈👿 Maven 에러 아래 두 개의 라이브러리에서 에러가 자꾸 난다면 ? org.apache.maven.plugins:maven-deploy-plugin:2.8.2 org.apache.maven.plugins:maven-site-plugin:3.3 방법1 ) Maven 레포지토리 캐시를 정리하십시오. Maven은 다운로드한 종속성을 로컬 레포지토리에 캐싱한다. 때로는 이 캐시가 손상되거나 누락된 파일을 포함할 수 있으며, 이로 인해 에러가 발생할 수 있다. 로컬 레포지토리를 삭제하거나 특정 플러그인에 대한 캐시를 제거하여 문제를 해결할 수 있다. 일반적으로 로컬 레포지토리는 사용자 홈 디렉토리의 .m2/repository 폴더에 위치해 있다. 방법2 ) Maven 설정을 확인하십시오. 프로젝트 또는 전역 설정..
웹 애플리케이션 서버와 인가 서버를 분리하여 관리할 경우 장단점 ( OpenID Connect, OAuth 2.0) 웹 애플리케이션 서버와 인가 서버를 분리하여 관리할 경우 장단점 최근에 웹 애플리케이션 서버와 인가 서버를 분리하여 관리하는 방식에 대해 알아보았습니다. 이전에는 스프링 시큐리티를 사용하여 하나의 웹 애플리케이션에서 인증과 인가를 처리했습니다. 하지만, OpenID Connect와 OAuth 2.0과 같은 최신 인증 프로토콜을 공부하면서 인증 사용자 통합과 인증 서버 분리의 장단점을 알아보았습니다. 장점 보안 강화 인가 서버를 별도로 관리하면 웹 애플리케이션 서버와 인증 데이터를 격리할 수 있어 보안을 향상시킬 수 있습니다. 인가 서버가 다른 시스템과 분리되어 있으면, 공격자가 웹 애플리케이션 서버에 침투해도 인증 데이터에 액세스하기 어렵습니다. 중앙 집중식 인증 관리 인가 서버를 중앙에서 관리하면 여러..