분류 전체보기

스프링 정리

Spring Security & JWT(Json Web Token) 활용 예제

https://github.com/voidmelody/SpringSecurity-Jwt GitHub - voidmelody/SpringSecurity-Jwt: 스프링 시큐리티와 Jwt를 활용한 인가/인증 방식 구현 예제입니다. 스프링 시큐리티와 Jwt를 활용한 인가/인증 방식 구현 예제입니다. Contribute to voidmelody/SpringSecurity-Jwt development by creating an account on GitHub. github.com 생각보다 워낙 다양한 방법들이 있어서, 내가 원하는 구현에 있어서 어려움이 많았다. 많은 다른 이들의 포스팅과 레퍼런스 등을 참고해서 그래도 가장 만족할만한 코드를 짠 것 같습니다. 세션 기반이 아닌, Jwt 토큰을 활용한 header에..

스프링 정리

Spring Batch & Quartz 활용해보기

지난 포스팅에 이어 Quartz를 활용해봅시다. Quartz는 스케쥴러, 즉 일정 시간마다 지정한 횟수만큼 반복해서 Job을 실행할 수 있는 라이브러리를 말합니다. 단순히 몇 번 반복하는 작업이라면 for문등의 반복문을 활용할 수도 있겠지만, 작업 실패 시 재시작 처리라던가, 재 시작 후에 작업 복귀 등의 복잡한 기능이 필요할 때 이를 단순히 구현하는 것보다 수준 높은 기능을 제공합니다. 또 설정된 스레드 풀 내에서 새로운 스레드를 생성해 작업을 진행하기 때문에 메인 스레드를 방해하지 않고 비동기적으로 작동할 수 있습니다. 그냥 줄글로 작성하기보다는, 코드를 보면서 설명하는 게 좋을 듯 싶어 코드를 첨부해가며 진행해보겠습니다. Quartz도 Batch처럼 데이터베이스에 실행중인 작업이나 트리거에 대한 정..

스프링 정리

Spring Batch 간단하게 활용해보기(스프링 배치 5.0)

이번 포스팅은 인턴 기간 중 맡았던 과제에 대한 리뷰 및 복기 목적 하에 작성합니다. 최근 스프링 부트 3.0으로 업그레이드 되면서 Spring Batch에서도 많은 변화가 있었습니다. 현재 스프링 배치는 5점대입니다. 기존의 많은 블로그 포스팅이나 자료에서는 스프링 2점대 기반의 코드들이었기에 이번 실습을 하면서 어려움이 있었습니다. 혹시 저처럼 해매고 계실 분이 계실까 해 개선한 코드를 공유하고자 합니다. 우선 배치라는 개념이 무엇일까요? 이번에 실습하며 배치라는 개념에 대해 새로 알게되었습니다. 개념에 대한 정의에 설명하기 앞서 예시를 이해해봅시다. 만약 매일 아침 5시에 어제 전체 데이터를 집계 처리해야한다고 가정해봅시다. 저라면, 그냥 Tomcat이랑 Spring MVC 등의 웹 어플리케이션을 ..

스프링 정리

Spring Security - authentication /authorization

* user detailservice / password encoder /authorization provider 스프링 시큐리티에서 애플리케이션 보안을 구성하기 위해 크게 두 가지 영역을 가지고 있다. 1. 인증 (Authentication) = 해당 사용자가 본인이 맞는지 확인 (ex. 로그인 -> 로그인을 하게 되면 JWT나 Session을 통해 인증 유지) 2. 권한 (Authorization) = 해당 사용자가 자원을 접근할 권한이 있는지를 확인 대부분의 시스템에서는 회원을 관리하고 있고, 그에 따른 인증과 권한에 대한 처리가 필요하다. 기본적으로 스프링 시큐리티는 인증 절차를 거친 후에 권한 과정을 거침으로써 해당 리소스에 접근 권한이 있는지 확인한다. 스프링 시큐리티에서는 이러한 인증과 권한..

스프링 강의 필기/스프링 MVC 1편

7) 스프링 MVC - 웹 페이지 만들기

이제 배운 것들을 토대로 간단한 게시판을 만들어보자. 상품을 관리할 수 있는 서비스를 만들어본다 가정하자. 상품에는 id, 이름, 가격, 수량이라는 속성이 존재한다. 이 상품의 목록, 상세, 등록, 수정할 수 있는 기능을 구현하려 한다. @Data public class Item{ private Long id; private String itemName; private Integer price; private Integer quantity; public Item(){ } public Item(String itemName, Integer price, Integer quantity){ this.itemName = itemName; this.price = price; this.quantity = quantit..

백준 문제풀이

백준 17298번 - 오큰수(c++)

https://www.acmicpc.net/problem/17298 17298번: 오큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net 우선 처음 떠올린 풀이는 이랬다. #include using namespace std; int v[1000004]; int result[1000004]; int n; int temp; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin >> n; for(int i = 0; i > v[i]; }..

백준 문제풀이/실버3

백준 15353번 - 큰 수 A+B(2)

https://www.acmicpc.net/problem/15353 15353번: 큰 수 A+B (2) C++17, C11, C99, C++98, C++11, C++14, C99 (Clang), C++98 (Clang), C++11 (Clang), C++14 (Clang), C11 (Clang), C++17 (Clang) www.acmicpc.net 초등학교 산수시간에 배운 매우 고전적인 방법을 사용해야 한다. 문자열로 받아서 산수를 해준다. 계산을 편하게 하기 위해서 역순을 해준다음에 길이가 짧은 쪽에 0을 그냥 붙여주고 시작했다. #include using namespace std; int main() { std::cin.tie(NULL); std::cout.tie(NULL); std::ios::sy..

백준 문제풀이/실버3

백준 1002번 - 터렛

https://www.acmicpc.net/problem/1002 1002번: 터렛 각 테스트 케이스마다 류재명이 있을 수 있는 위치의 수를 출력한다. 만약 류재명이 있을 수 있는 위치의 개수가 무한대일 경우에는 -1을 출력한다. www.acmicpc.net 조규현과 백승환의 좌표가 있을 때, 적과의 거리가 주어지고, 교점을 구하라는 뜻이다. 거리가 주어지고, 원의 정의 자체가 어떤 한 점으로부터 거리가 일정한 점의 집합이기에 원이라는 것을 알아냈다. 즉 두 원이 있고 그 원들의 교점을 구하면 되는 문제이다. 학창 시절에 내접원, 외접원 등등을 배운 기억이 날 것이다. 코드를 보며 좀 더 케이스 분류 해보자. #include using namespace std; int main() { std::cin.t..

void_melody
'분류 전체보기' 카테고리의 글 목록 (7 Page)