회원가입 서비스 만들기
·
Backend Programming
잡담캘린더 프로젝트에 회원을 추가해서 회원마다의 일정을 사용할 수 있도록 회원가입, 로그인에 대해 공부하고 배운 내용들을 정리해서 올려보고자 합니다. 작성된 내용들이 회원가입 서비스를 만들기 위해서 배우고 있는 개발자분들에게 도움이 되었으면합니다. 다만 저 또한 공부하고 작성하는 코드들이여서 부족한 내용이 있을 수도 있으니 참고 정도로 살펴보셨으면 합니다.회원 가입 만들기1. 이메일 검증//Controller@PostMapping("/register/users") public String createUser(@Validated @ModelAttribute UserDto.RegisterRequest userRequest, RedirectAttribut..
[JAVA] 프로그래머스 리코쳇 로봇
·
Algorithm/Programmers
import java.util.LinkedList;import java.util.Queue;class Solution { public int solution(String[] board) { int[] goal = new int[2]; int[] start = new int[2]; Queue nextNode = new LinkedList(); boolean[][] visited = new boolean[board.length][board[0].length()]; for (int i = 0; i = board.length || newY = board[0].length() || board[newX].charAt(ne..
DTO에서 NotNull설정이 되어 있을 때 PATCH를 어떻게 해줘야할까?
·
Backend Programming
현재 상황 및 문제점캘린더 프로젝트를 만들면서 일정 설정, 반복 설정, 알림 설정을 한 곳에서 받아 처리하려고 했습니다. 그러나 PUT을 사용하여 구현할 경우, 현 구조에서는 반복 설정이 바뀌지 않았음에도 반복 내용을 삭제하고 재등록해야 하는 문제가 있었습니다. 이를 해결하기 위해 PATCH를 사용하여 특정 기능만 수정할 수 있도록 하려고 했습니다. 그러나 일정 설정의 필수 정보들이 NotNull로 설정되어 있어, PATCH로 데이터를 보낼 때 어떻게 처리해야 할지 고민이 되었습니다.public class ScheduleDto { private int id; @NotNull private String title; private String description; @NotNull..
[Java] 프로그래머스 멀리뛰기
·
Algorithm/Programmers
//dfs으로 하면 시간초과// % 1234567이니까 무조건이다./*1121123111211241111112121211225111111112112112112111221122212611111111112111211121112111211112211211221211122222dp[n] = dp[n-1] + dp[n-2]*/class Solution { public long solution(int n) { long[] dp = new long[2001]; dp[0] = 0; dp[1] = 1; dp[2] = 2; for(int i = 3; i  풀이1. 우선 % 1234567을 한다는건 경우의수가 엄청나다는 것이니 탐색으로..
RESTful API란?
·
Backend Programming
RESTful API란 무엇인가요?RESTful API는 Representational State Transfer의 약자로, 웹 표준을 기반으로 서버와 클라이언트 사이의 상호작용을 정의하는 방법입니다. REST 원칙을 따르는 API는 HTTP 프로토콜을 사용하여 데이터를 주고받으며, 웹 개발에서 널리 사용됩니다.REST 아키텍처 스타일의 몇 가지 원칙균일한 인터페이스균일한 인터페이스는 모든 RESTful 웹 서비스 디자인의 기본입니다. 이는 서버가 표준 형식으로 정보를 전송함을 나타냅니다. 형식이 지정된 리소스를 REST에서 표현이라고 부릅니다. 예를 들어, 리소스를 동적으로 검색할 수 있도록 표현에 하이퍼링크를 넣어 전송합니다.뭐가 균일하다는 거지?자원 식별:URI를 통해 리소스를 고유하게 식별합니다...
서블릿이란 무엇일까?
·
Backend Programming
서블릿(Servlet)은 자바를 사용하여 웹 애플리케이션을 개발할 때, 클라이언트의 요청을 처리하고 응답을 생성하는 서버 측의 프로그램입니다. 서블릿은 주로 HTTP 요청과 응답을 처리하는 데 사용되며, 자바 EE (Enterprise Edition) 스펙의 일부입니다.서블릿의 역할과 동작 원리클라이언트 요청 처리:웹 브라우저나 다른 HTTP 클라이언트가 웹 서버에 요청을 보냅니다.웹 서버는 요청을 서블릿 컨테이너(Servlet Container)에 전달합니다.서블릿 컨테이너:서블릿 컨테이너는 서블릿의 라이프사이클을 관리합니다. 여기에는 서블릿의 로드, 초기화, 요청 처리, 소멸 등이 포함됩니다.서블릿 컨테이너는 요청을 적절한 서블릿으로 전달하고, 서블릿은 요청을 처리하여 응답을 생성합니다.응답 생성:서..