2022/02/19 4

[괴발개발] TODO 웹 개발 노트 - 권한 부여

기존에 존재했던 코드를 거의 다 갈아엎었습니다. 아무래도 RESTful API를 본인 어플리케이션에서 사용하면서 권한을 부여하기에는 조금 무리가 있는 것 같았기에 갈아엎었습니다. (JWT가 문제였는 데, JWT를 사용하여서 해더를 통해 권한을 부여하여야하는 데, 이를 관리하기 위해서는 쿠키에 값을 저장을 해야합니다. 그럼 결국에는 코드 갈아엎는 것은 동일하였기에 코드를 그냥 갈아엎고, RESTful를 포기하였습니다.) @EnableWebSecurity @AllArgsConstructor @Configuration public class SecurityConfig extends WebSecurityConfigurerAdapter { private MemberService memberService; @Bea..

Spring/괴발개발 2022.02.19

[Spring] Spring AOP/PSA 설명

이전 포스트에서 POJO를 간단하게나마 설명하였습니다. 그중에서 IOC와 DI는 짧게라도 설명한 적이 있으나, AOP와 PSA는 없었기에 이번 기회에 포스트하고자 합니다. AOP란? Aspect Oriented Programming의 약자로 관점 지향 프로그래밍을 뜻합니다. 관점지향은 쉽게 설명하자면, 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 각각 모듈화하겠다... 정도로 설명이 가능합니다. 한 마디로 표현하자면, 어떤 로직을 어떤 관점으로 각각 공통화된 로직이나 기능을 하나의 단위로 묶는 것 이라고 표현할 수 있습니다. 핵심관점은 보통 우리가 적용하고자하는 핵심 비즈니스 로직 등이고, 부가적인 관점으로는 핵심로직을 실행하기위해 행해지는 DB연결, 로깅, ..

Spring 2022.02.19

[프로그래머스] 디스크 컨트롤러

※ 해당 문제의 링크는 여기입니다. ※ 3단계 문제인 만큼 굉장히 어려웠던 문제였습니다. 이번 글에는 제한 사항 대신 알고리즘 및 전체 코드만 포스팅하겠습니다. (제한 사항, 문제에 잘 적혀있는 데 또 적는 거 귀찮....) 알고리즘 가장 시간이 짧은 순서대로 일을 처리해야하는 것이 주 목적입니다.하지만 일은 한 번에 하나씩만 처리가 가능하므로일이 끝나고 나서 현재 시간때 이전에 들어온 일들 중 가장 시간이 짧은 것을 다음으로 일을 하며,하나 하나씩 처리해야하는 알고리즘을 가지고 있습니다. 단, 요청 시간. 즉, 언제 들어왔는 지 역시 파악해야하는 문제입니다. 전체 소스코드 import java.util.*; class Solution { public int solution(int[][] jobs) { ..