springboot

·Web
Spring Boot는 서버와 클라이언트 간의 효율적인 데이터 전송을 위해 여러 가지 응답 처리 방식을 제공합니다. 이러한 다양한 응답 처리 방식은 애플리케이션의 요구사항에 따라 유연하게 선택할 수 있으며, 성능 최적화와 사용자 경험 향상에 기여합니다. 이번 글에서는 각 응답 처리 방식의 특징과 사용 사례를 자세히 살펴보겠습니다. 1. @ResponseBody / @RestController간단한 문자열, 객체, JSON 등을 반환할 때 주로 사용상태 코드와 헤더 설정은 자동으로 처리되며, 기본적으로 200 OK 상태 코드가 사용됨json 응답형식{ "key": "Hello", "value": "World"}2. ResponseEntity간단하고 유연한 응답 처리주로 API 응답에 상태 코드와 헤더를..
·Web
OAuth2Spring Security의 OAuth2 모듈은 OAuth 2.0 프로토콜을 사용하여 사용자 인증 및 권한 부여를 처리하는 기능을 제공합니다. 이를 통해 애플리케이션은 Facebook, Google, GitHub 등과 같은 외부 OAuth 2.0 제공자를 사용하여 사용자를 인증할 수 있습니다.Spring Security OAuth2 기능OAuth2 로그인: 외부 OAuth 2.0 제공자를 통해 사용자를 인증합니다.Resource Server: 액세스 토큰을 검증하고 보호된 리소스에 대한 접근을 제어합니다.Authorization Server: 인증과 권한 부여를 처리하고 액세스 토큰을 발급합니다. 클라이언트 정보얻기구글: https://console.cloud.google.com/home/d..
·Web
💻 Apple M1 Pro (macos14.5 on arm64)🛠️ IDE: IntelliJ🏁 Language: JAVA17🔗 Framework: Springboot 3.3.0⚙️ Project: Gradle🗄️ Database: MySQL 8.3.0 Homebrew🔐 Spring Security 6.3.0 JWT (JSON Web Token) 는 무엇인가요? JWT(JSON Web Token)는 JSON 객체를 사용하여 두 개체 간 정보를 안전하게 전송하기 위한 컴팩트하고 자가 포함된 방식입니다. JWT는 보통 인증과 권한 부여에 사용됩니다. 프로젝트 설정의존성 추가build.gradle// jwtimplementation 'io.jsonwebtoken:jjwt-api:0.11.5' // J..
·Web
💻 Apple M1 Pro (macos14.5 on arm64)🛠️ IDE: IntelliJ🏁 Language: JAVA17🔗 Framework: Springboot 3.3.0⚙️ Project: Gradle🗄️ Database: MySQL 8.3.0 Homebrew🖇️ Persistence Framework: MyBatis🔐 Spring Security 6.3.0 Spring Security 6.x 버전에서 달라진 점!Spring Boot 3.3.0의 spring-boot-starter-security는 Spring Security 6.3.0을 지원합니다. springboot3.x 버전에선 spring security6.x 을 기반으로 상당 부분에 변화가 생겼습니다. Spring Secur..
·Web
SpringBoot Security를 사용하는 이유?SpringBoot 애플리케이션에서 보안을 구현할 때 사용됩니다.인증, 권한 부여, 보안 설정 등의 주요 기능을 구현하며 애플리케이션의 보안을 효율적으로 관리할 수 있도록 도와주기 때문에 상당한 보안 지식과 경험이 있지 않다면 보안을 직접 구현하는 대신 Spring Security라는 검증된 프레임워크를 사용함으로써 보안을 강화할 수 있습니다. 주요기능1. 인증 (Authentication): 로그인폼 기반 인증: 주로 HTML 로그인 폼을 통해 사용자 이름과 비밀번호를 서버에 제출하는 방식Step1. 로그인 페이지 폼에서 사용자 자격 증명 제출사용자가 로그인 폼에 사용자 이름과 비밀번호를 입력하고 제출하면클라이언트는 POST 요청을 통해 자격 증명을..
·Web
💻 Apple M1 Pro (macos14.5 on arm64)🛠️ IDE: IntelliJ🏁 Language: JAVA17🔗 Framework: Springboot 3.3.0⚙️ Project: Gradle🗄️ Database: MySQL 8.3.0 Homebrew 사전준비- MySQL 설치MySQL이 설치되어 있지 않다면 아래글을 참고해주시길 바랍니다. [MAC M1 Pro] mysql 삭제 / 설치 / 실행 / 중지 / 상태확인 / 초기설정 / 접속 / 에러해결MySQL 삭제- homebrew 로 설치했을 때sudo rm -rf /usr/local/var/mysqlsudo rm -rf /usr/local/bin/mysql*sudo rm -rf /usr/local/Cellar/mysql - ..
·Web
더보기 brew install openjdk@17A problem occurred configuring root project '프로젝트명'.> Could not resolve all artifacts for configuration ':classpath'.   > Could not resolve org.springframework.boot:spring-boot-gradle-plugin:3.3.0.     Required by:         project : > org.springframework.boot:org.springframework.boot.gradle.plugin:3.3.0      > No matching variant of org.springframework.boot:spring-boot..
·Web
https://start.spring.io/Spring Boot 3.3.0은 최소 Java 17 이상을 필요로 합니다.Java 11을 사용하고 있는 경우, Spring Boot 2.7.x와 같은 이전 버전을 사용해야 합니다. *Gradle과 Maven의 차이는 뭘까? 어떤 방식이 더 좋을지에 대한 궁금증!더보기Gradle과 Maven은 둘 다 Java 프로젝트의 빌드 및 관리를 위한 도구입니다.둘 방식의 차이는 크게 파일 형태로 볼 수 있습니다. - Maven은 선언형 구성으로 XML 파일(pom.xml)을 사용하여 프로젝트의 의존성, 빌드 설정 등을 선언합니다.- Gradle은 스크립트 기반 구성으로 Groovy(build.gradle) 또는 Kotlin DSL(build.gradle.kts)를 사용하..
태이오이오
'springboot' 태그의 글 목록