전체 글

rm -rf /
· 프로젝트
🎂 지인의 생일 전에 웹사이트로 이미지와 내용 등을 포함한 생일 카드를 미리 만들어 놓고 지인들에게 “카카오톡 공유”로 보내서 서로 축하한다는 댓글등을 작성해서 지인의 생일에 생일 카드를 보내면 감동을 받겠다는 취지에서 시작한 프로젝트 Github Repo link_preview 사용 기술 Backend : Supabase(Serverless Service) + PostgreSQL + Imgur API + Cloudflare Workers(Serverless Imgur API Proxy Server) Frontend : React + axios + Kakao API Web deploy : Github pages 프로젝트 설명 Supabase를 이용하여 Server 없이 DB에 클라이언트에서 글을 작성, ..
개인 공부 목적 - 참고만 하시는걸 추천드립니다. Multiples of 3 and 5 If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23. Find the sum of all the multiples of 3 or 5 below 1000. ⇒ 3과 5의 배수 만약 우리가 3 또는 5의 배수인 10 이하의 모든 자연수를 나열한다면, 우리는 3, 5, 6, 9를 얻게 됩니다. 이 배수들의 합은 23입니다. 1000 아래의 3이나 5의 모든 배수의 합을 구하세요. def func(): sum = 0 for i in range(100..
· 공부/Java
생성자와 접근제어 생성자 정적 변수 정적 메소드 접근제어 this 클래스간의 관계 객체가 생성될 때 초기화를 담당하는 생성자에 대하여 알아보자. 생성자 생성자(contructor) : 객체가 생성될 때에 필드에게 초기값을 제공하고 필요한 초기화 절차를 실행하는 메소드 생성자의 예 class Car { private String color; // 색상 private int speed; // 속도 private int gear; // 기어 // 첫 번째 생성자 public Car(String c, int s, int g) { color = c; speed = s; gear = g; } // 두 번째 생성자 public Car() { color = "red"; speed = 0; gear = 1; } } pu..
Entity Entity Class @Entity : 데이터베이스의 테이블과 매핑되는 객체라는 선언. @Table(name = “”) : 테이블 이름과 클래스 이름이 다를 때 사용. Entity Properties @id : primary key로 사용할 속성 @GeneratedValue(strategy = ) : 자동으로 값 생성 GenerationType.AUTO : (default) DBMS를 보고 JPA가 알아서 결정(오라클 : 시퀀스) GenerationType.IDENTITY : DBMS가 생성, Auto increment GenerationType.SEQUENCE : DB의 sequence 사용 @Column : property는 해당 이름으로 컬럼이 생성되는데 추가 정보를 정의한다. nam..
View Template Engine Controller가 전달해준 데이터를 기반으로 동적인 html 문서를 생성해 주는 엔진 조건문, 반복문 등으로 문서를 완성한다. 기존 jsp는 View라고 하기에는 너무 많은 기능을 사용할 수 있어서 스프링에서 스펙 아웃 되었다. Spring framework은 Thymeleaf를 기본 제공한다. 프로젝트에 추가 build.gradle 에 추가 후 Gradle refresh implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' Thymeleaf의 기본 확장자는 html html 태그에 다음과 같이 namespace를 추가하여 사용한다. 일반 html과 동일하게 동작하지만 th: 로 표기된 항..
· 프로젝트
SpringBoot에서 사업자 번호 없이 프로젝트 내에서 토스, 카카오페이 결제를 만들어보자. 💡 포트원(PortOne) 사용 이유 : 팀 프로젝트 과정에서 결제 서비스를 추가 할 상황이 있었는데 카카오페이 테스트결제를 넣어도 되지만, 클라이언트 단에서 실제로 결제를 하는 것 같은 효과를 내고 싶었고, 카카오 페이 테스트 결제에서는 Back-end단에서 결제가 정확히 완료 되었는지 취소 되었는지 불투명하여서 결제 관련 API를 찾다가 포트원 API를 찾음. 포트원 지원 결제수단 목록 card (신용카드) trans(실시간계좌이체) vbank(가상계좌) phone(휴대폰소액결제) paypal (페이팔 SPB 일반결제) applepay (애플페이) naverpay(네이버페이) samsungpay(삼성페이) ..
# RESTFul Server 만들어보기 데이터베이스 없이 고정 데이터를 반환하는 Server를 작성해본다. 패키지 관리법 계층형패키지 vs 도메인형 패키지 프로젝트 규모가 작다면 어떤 방법을 사용해도 문제 없다. 프로젝트가 커진다면 도메인형 패키지를 고려하는 것이 좋다. 이 글에서는 도메인형으로 만들어볼 예정 패키지 추가 lecture - controller, dto teacher - controller, dto 각 도메인 내부에 repository, service, entity 등의 패키지가 추가된다. Lecture LectureDto package com.example.myschool.lecture.dto; import lombok.AllArgsConstructor; import lombok.Get..
Spring Boot DBCP DBCP : Data Base Connection Pool 매번 Connection을 만드는 것이 아니라 서버가 감당할 수 있을 만큼의 Connection Pool을 미리 만들어두고 이를 사용-반환 하면서 데이터베이스를 사용하는 것 Spring boot 프로젝트는 기본적으로 HikariCP를 사용한다. 설정 항목 application.propertites DB url, username, password(필수로 작성) driverClassName : jdbc class name (사용 DBMS에 따라서 달라짐) connectionTimeout : default (30초) maximumPoolSize : 최대 Connection 수 default 10 Database libra..