API/이론 7

65. [JAVA] DB 처리 방식 : JDBC, DAO 패턴, JPA

DB 처리 방식   Java에서 데이터베이스 처리 방식에는 여러 가지 방법이 있습니다. 대표적인 방법으로는 JDBC, DAO 패턴, 그리고 JPA가 있습니다. 이 글에서는 각각의 방법이 어떻게 데이터베이스와 상호작용하는지, 그리고 이들을 어떻게 효율적으로 사용할 수 있는지에 대해 자세히 설명합니다.1. JDBC (Java Database Connectivity)JDBC는 Java에서 데이터베이스와 연결하고 쿼리를 실행할 수 있는 기본적인 방법을 제공합니다. JDBC를 사용하면 SQL을 직접 작성하고, 결과를 받아와 처리하는 작업을 할 수 있습니다. 하지만, 이 방법은 직접적인 SQL 쿼리 작성과 결과 처리가 포함되어 있어 코드가 다소 복잡하고 유지보수가 어려운 경우가 많습니다. 1.1. JDBC 기본 흐..

API/이론 2025.01.12

59. [ JAVA ] SpringData JPA로 Repository 인터페이스 생성

Repository 인터페이스란? Repository 인터페이스는 Spring Data JPA에서 데이터 액세스 계층(Data Access Layer)을 추상화하는 핵심 구성요소입니다. 이를 통해 개발자는 복잡한 SQL을 직접 작성하지 않고도 데이터베이스와 상호작용할 수 있으며, 코드의 간결성과 유지보수성을 크게 향상시킬 수 있습니다.  Repository 인터페이스의 자동화 처리 Spring Data JPA의 Repository 인터페이스를 사용하면, 데이터베이스 테이블 변경 시 다음과 같은 자동화된 처리를 제공합니다. 1. 쿼리 메서드 자동 생성메서드 이름 기반 쿼리: 메서드 이름만으로도 SQL 쿼리를 자동 생성합니다.Optional findByEmail(String email); // email 컬..

API/이론 2025.01.12

58. [ JAVA ] SpringBoot 에서 JWT적용 및 구현

JWT(JSON Web Token)란? JWT(JSON Web Token)는 당사자 간에 정보를 안전하게 전송하기 위한 콤팩트하고 독립적인 방식을 정의하는 개방형 표준입니다.  JWT의 특징 JSON 형식: 정보를 JSON 객체로 안전하게 전송합니다.구조: Header, Payload, Signature의 세 부분으로 구성됩니다.상태 비저장(Stateless): 서버에 별도의 저장소가 필요 없어 확장성이 뛰어납니다.자가 수용적(Self-contained): 토큰 자체에 필요한 모든 정보를 포함합니다.보안: 디지털 서명을 통해 데이터 무결성을 보장합니다. 보안을 강화하는 방법 안전한 비밀 키 사용: JWT 서명에 사용되는 비밀 키를 안전하게 관리하고 정기적으로 교체합니다.짧은 만료 시간 설정: 토큰의 유..

API/이론 2025.01.12

52. [ JAVA ] Spring Boot : 데이터 유효성 검사 적용방법(validation)

Validation(유효성 검사)란? Validation(유효성 검사)은 데이터의 정확성과 일관성을 확인하는 프로세스입니다. 1. 역할데이터 무결성 보장: 시스템에 입력되는 데이터가 정확하고 유효한지 확인합니다.보안 강화: 악의적인 데이터 입력을 방지하여 시스템의 보안을 향상합니다.사용자 경험 개선: 잘못된 데이터 입력 시 즉각적인 피드백을 제공하여 사용자 경험을 개선합니다.비즈니스 로직 지원: 비즈니스 규칙에 맞는 데이터만 처리되도록 보장합니다. 2. 구현 방식클라이언트 측 검증: 브라우저에서 JavaScript를 사용하여 데이터를 검증합니다.서버 측 검증: 백엔드 코드에서 데이터의 유효성을 검사합니다.데이터베이스 제약 조건: 데이터베이스 레벨에서 데이터 무결성을 보장합니다. 3. 자동화 방법 Spri..

API/이론 2025.01.10

43. [ JAVA ] JWT(Json Web Token)(보안) 정의

1. JWT 토큰이란?JWT(Json Web Token)은 Json 객체에 인증에 필요한 정보들을 담은 후 비밀키로 서명한 토큰으로, 인터넷 표준 인증 방식입니다. 공식적으로 인증(Authentication) & 권한허가(Authorization) 방식으로 사용됩니다. 여기서 일반 로그인 과정과 인증 방식을 헷갈릴 수 있습니다. 바로 jwt 프로세스를 살펴보겠습니다.  1) 사용자가 아이디와 비밀번호 혹은 소셜 로그인을 이용하여 서버에 로그인 요청 2) 서버는 비밀키를 사용해 json 객체를 암호화한 JWT 토큰을 발급 3) JWT를 헤더에 담아 클라이언트에 전달 여기까지가 JWT를 발급받기까지의 (로그인 전) 과정입니다. 로그인 이후에는 다음과 같은 과정이 이루어집니다.클라이언트는 JWT를 로컬에 저장..

API/이론 2024.12.30

37. [ JAVA ] 서버 개발 환경 설정

1. API(Application Programming Interface) 1) API(Application Programming Interface)란 API(Application Programming Interface)는 서로 다른 소프트웨어 애플리케이션이 통신하고 상호 작용할 수 있게 해주는 프로토콜과 도구의 집합입니다.    2) API의 주요 특징중개자 역할: API는 애플리케이션 간의 통신을 facilitate 하는 소프트웨어 중개자 역할을 합니다. 추상화: 복잡한 시스템 세부 사항을 숨겨 프로그래밍 과정을 단순화합니다. 표준화: 애플리케이션이 정보를 요청하고 교환하는 표준화된 방법을 제공합니다. 다용도성: 모바일 앱, 웹 애플리케이션, IoT 기기 등 다양한 환경에서 사용될 수 있습니다.  3..

API/이론 2024.12.18

15. [ JAVA ] API 서버 개발을 위한 필수 요소

서버 개발을 쉽게 해줄수 있는 프레임 워크 프레임 워크 : Spring Boot   1. Spring Boot    1) Spring Boot 정의  Spring Boot는 Java Spring Framework를 기반으로 한 서브 프레임워크로,  웹 애플리케이션과 마이크로서비스를 더 쉽고 빠르게 개발할 수 있도록 설계된 도구입니다. 아래는 Spring Boot의 주요 특징과 장점입니다: 2) Spring Boot의 주요 특징 (1) 자동 설정(Auto-Configuration) 복잡한 설정 파일 없이, 필요한 기능을 자동으로 설정합니다. 예: @EnableAutoConfiguration 어노테이션을 통해 REST API 개발 시 필요한 Spring MVC와 내장 서버를 자동 구성. (2) 내장 서버(E..

API/이론 2024.12.06
home
}