전체 글

배우는 과정..
· JAVA
참조 문서 https://tecoble.techcourse.co.kr/post/2020-11-07-singleton/ 싱글톤(Singleton) 패턴이란? 이번 글에서는 디자인 패턴의 종류 중 하나인 싱글톤 패턴에 대해 알아보자. 싱글톤 패턴이 무엇인지, 패턴 구현 시 주의할 점은 무엇인지에 대해 알아보는 것만으로도 많은 도움이 될 것이라 tecoble.techcourse.co.kr https://greatzzang21.tistory.com/38 Spring에서 싱글톤을 사용하는 이유 [ Spring에서 싱글톤을 사용하는 이유 ] 애플리케이션 컨텍스트에 의해 등록된 빈은 기본적으로 싱글톤으로 관리된다. 즉, 스프링에 여러 번 빈을 요청하더라도 매번 동일한 객체를 돌려준다는 것 greatzzang21.ti..
· JAVA
디자인 패턴(자바) 디자인 패턴은 소프트웨어 디자인에서 발생하는 일반적인 문제에 대한 해결책을 포괄적으로 설명하는 재사용 가능한 설계 아이디어입니다. 디자인 패턴은 경험적으로 검증된 솔루션을 제공하여 코드를 더 유연하고 재사용 가능하며 유지보수가 쉽도록 만듭니다. 장점 개발자간의 원활한 소통 소프트웨어 구조 파악이 용이 재사용을 통한 개발 시간 단축 설계 변경 요청에 대한 유연한 대처 단점 객체지항 설계에 대한 깊은 이해도가 필요 간단한 문제에 대해 디자인 패턴을 적용하는 것이 오히려 더 복잡하고 비효율적일 수 있습니다. 모든 문제에 대해 디자인 패턴을 적용하는 것은 적절하지 않습니다. 디자인 패턴은 크게 생성(Creational), 구조(Structural), 행동(Behavioral) : GoF 디자..
추상 클래스 추상 클래스는 추상적인 클래스입니다. 추상적이기 때문에 기본적으로 객체를 만들 수 없습니다. abstract class Animal { void sound(); } 추상 클래스란? 추상 클래스는 추상 메서드를 가지고 있습니다. 추상 클래스를 사용하는 이유는 수많은 객체를 추상 화하는 공통 부모를 만들 수 있기 때문입니다. 공통 부모를 만들면 어떤 이점이 있을까요? class Dog { void sound() { print('멍멍 배고파'); } } class Cat { void sound() { print('야옹 배고파'); } } void main() { Dog dog = Dog(); Cat cat = Cat(); Fish fish = Fish(); dog.sound(); cat.sound..
1. 상속 상속은 부모가 가진 상태와 행위를 자식이 물려받는 것과 동시에 다형성이 성립해야 합니다. 2. 다형성 다형성이란 여러 가지 형태를 가질 수 있는 능력을 의미합니다. 2 - 1. 다형성일까? - 엔진과 자동차 엔진과 자동차는 서로 반대 개념이다. 자동차 안에 엔진이 있기 때문이데, 이는 객체 지향 프로그래밍에서는 통용하지 않는 문법이란다 ..ㅎㅎㅎ.. 따라서 엔진이 자동차를 상속을 받는 것이 아닌 class 엔진 clas 자동차 { 엔진 } 포함 관계가 형성 되어야 하는 것이다!! 3. 이니셜라이져 [[ : ]] 간단하게 보면 Burger 가 먼저 만들어 지고 CheezeBurger 가 만들어지는 구조이다. 따라서 Burger 에 this.name( 단일 생성자 )가 있다면 부모에게 매개변수를 ..
late 키워드 late 키워드는 일반적으로 non-nullable 변수를 나타내는 late 변수를 정의할 때 사용됩니다. late로 선언된 변수는 초기화를 미루고, 변수가 실제로 사용되기 전에 초기화됩니다. late 키워드를 사용하는 이유 변수를 정의할 때 초기화할 수 있는 시점이나 방법이 없는 경우. 변수를 생성자나 함수에서 나중에 초기화해야 하는 경우. 변수를 사용하기 전에 null 여부를 확인하거나 예외 처리를 할 필요가 없는 경우 final 과 const final 상수 (불변) 런타임 상수 const 상수 (불변) 컴파일 상수
· SpringBoot
문서 참조 https://wildeveloperetrain.tistory.com/144#google_vignette @RequestBody @ResponseBody 어노테이션 이해하고 사용하기 클라이언트와 서버의 통신(HTTP) @RequestBody, @ResponseBody Annotation을 이해하기에 앞서, 클라이언트와 서버 간 통신에 대해서 먼저 간단하게만 살펴보겠습니다. HTTP(HyperText Transfer Protocol) 통신이란, 브 wildeveloperetrain.tistory.com HTTP 클라이언트와 서버의 통신(HTTP) @RequestBody, @ResponseBody Annotation을 이해하기에 앞서, 클라이언트와 서버 간 통신에 대해서 먼저 간단하게만 살펴보겠습..
https://www.jsonschema2pojo.org/ jsonschema2pojo Reference properties For each property present in the 'properties' definition, we add a property to a given Java class according to the JavaBeans spec. A private field is added to the parent class, along with accompanying accessor methods (getter and sette www.jsonschema2pojo.org 설정값
· SpringBoot
Overview RestTemplate에 대해 이해해보자 RestTemplate HttpHeaders MultiValueMap HttpEntity URI , UriComponentsBuilder 모든 과정을 요약 1. RestTemplate 이란? RestTemplate은 스프링 프레임워크에서 제공하는 HTTP 클라이언트 라이브러리이며, RESTful 웹 서비스를 호출하고 그 결과를 받아오는 기능을 제공한다. 참조문서 https://adjh54.tistory.com/234 [Java] Spring Boot Web 활용 : RestTemplate 이해하기 해당 글에서는 RestTemplate에 대해 이해하고 활용 방법에 대해 확인해 봅니다. 1) RestTemplate 💡 RestTemplate - HTT..
· SpringBoot
@JsonNaming, @JsonProperty의 사용법을 소개하기에 앞서 사용할 코드를 작성하도록 하자. json으로 넘어오는 값이 아래와 같다고 가정하자(post든 put이든 ..) { "my_name": "kevin", "my_age": 20, "my_country": "korea" } 자바 Entity는 다음과 같다고 가정하자. @Data public class Student { private String myName; private String myAge; private String myCountry; } 컨트롤러는 다음과 같다. @RestController @RequestMapping("/api") public class StudentController { public void post(@Re..
· SpringBoot
0. OAuth 2.0 인증 방식에 이해 사용자가 자신의 계정 정보를 직접 공유하지 않아도 서드 파티 애플리케이션들이 제한된 접근을 할 수 있게 해줍니다. 구분 설명 인증(Authentication) ID와 비밀번호로 사용자 신원을 확인 각 서비스에 사용자가 카카오계정으로 로그인할 수 있는 기능 지원서비스에서 각 사용자를 식별할 수 있는 고유한 회원번호 제공참고: https://developers.kakao.com/docs/latest/ko/kakaologin/common#oidc 지원, 로그인 세션 대신 사용 가능한 ID 토큰 제공 가능 인가(Authorization) 사용자 개인정보와 같은 자원(Resource)에 대한 접근 권한 획득https://developers.kakao.com/docs/lat..
· SpringBoot
참조 문서 https://velog.io/@tjddus0302/Spring-Boot-%EB%A9%94%EC%9D%BC-%EB%B0%9C%EC%86%A1-%EA%B8%B0%EB%8A%A5-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0-Gmail velog velog.io 목적 및 개요 프로젝트를 진행하던 중에 회원에게 메일을 발송하는 기능을 구현해야겠다는 생각이 들었다. 회원가입 시 이메일 인증을 하고, 비밀번호를 분실했을 때 임시 비밀번호를 발송하는 기능을 구현하였다. 메일을 발송하는 방법은 여러가지가 있지만 Gmail의 SMTP 서버를 활용하여 이메일을 발송하는 방법을 이용하여 기능을 구현해보았다. 개발 환경 Spring Boot 3.1.8 Java 17 eclipse 구글 계정 설..
https://wikidocs.net/book/9451 생성 AI 활용기 생성 AI를 활용해 생산성을 높이는 법을 궁리합니다. ※ 이미지 생성 관련 내용(Stable Diffusion Web UI 등)은 [⟪이미지 생성 AI 활용⟫](https:… wikidocs.net
별이춤추는밤
밤하늘