Spring

Spring

Let's Encrypt와 Nginx로 HTTPS 만들기

🌱 오늘의 주제 : Let's Encrypt와 Nginx로 HTTPS 만들기 🌱 Let's Encrypt와 Nginx로 HTTPS 만들기 클라이언트와 WAS 사이에 리버스 프록시 서버를 두고 서버의 요청과 사용자의 요청을 대신 받는다. 클라리언트는 리버스 프록시 서버 뒷단의 WAS의 존재를 알지 못하기에 보안이 강화된다. 리버스 프록시 서버에 SSL 인증서를 발급해두어 HTTPS를 적용한다. WAS 서버가 여러대로 늘어나도 SSL 인증서 발급을 추가로 하지 않아도 되어 확장성이 좋다. CA는 무료 SSL 인증서 발급 기관인 Let's Encrypt를 사용한다. 그리고 편리한 SSL 인증서 발급 및 Nginx 환경 설정을 위해서 Cerbot를 사용한다. 🌱 준비해야 하는 사항들 한개의 서버 : AWS의 E..

Spring

JWT 토큰 소개와 Spring Security + JWT 코드 공유

🌱 오늘의 주제 : JWT 토큰 소개와 Spring Security + JWT 코드 공유 🌱 Stateful 서버 vs Stateless 서버 Stateful 서버 stateful 서버는 클라이언트에게 요청을 받을 때 마다, 클라이언트의 상태를 계속해서 유지하고, 이 정보를 서비스 제공에 이용합니다. 예를 들어, 세션이 있습니다. 예를 들어, 유저가 로그인을 하면, 세션에 로그인이 되었다고 저장을 해두고, 서비스를 제공할 때에 그 데이터를 사용합니다. 세션은 서버컴퓨터의 메모리 혹은 데이터베이스 시스템에 담습니다. Stateless 서버 Stateless 서버는 상태를 유지하지 않습니다. 상태정보를 저장하지 않으며, 서버는 클리언트측에서 들어오는 요청만으로만 작업을 처리합니다. 이렇게 상태가 없는 경우 ..

Spring

포트원 결제 - 카카오페이 (Spring, Java) With 시퀀스 다이어그램

🌱 오늘의 주제 : 포트원 결제 - 카카오페이 (Spring, Java) With 시퀀스 다이어그램 🌱 포트원 정보 및 설치 포트원 정보 및 설치는 아래 링크를 통해 실행하면 됩니다. 포트원 카카오페이 깃헙 : https://github.com/iamport/iamport-manual/blob/master/%EC%9D%B8%EC%A6%9D%EA%B2%B0%EC%A0%9C/sample/kakao.md 포트원 사이트 : https://portone.io/korea/ko 포트원, 온라인 비즈니스를 위한 통합 결제 솔루션 코드 한 줄로 세상 모든 방식의 결제를 경험해보세요 portone.io 🌱 포트원 이란? 국내 PG결제 연동을 쉽게해주는 결제 API 입니다. PG란 Payment gateway의 약자인데, ..

Spring

Kakao 로그인(OAuth 2.0) in Spring Boot With 시퀀스 다이어그램

🌱 오늘의 주제 : Kakao 로그인(OAuth 2.0) in Spring Boot With 시퀀스 다이어그램 🌱 OAuth 2.0 이란? OAuth 2.0 을 간단하게 설명하면 어떤 서비스를 만들 때 사용자 개인정보와 인증에 대한 책임을 지지 않고 신뢰할 만한 타사 플랫폼에 위임하는 겁니다. 보안적으로 문제되지 않도록 안전하게 관리해야 하고 ID/PW 에 관련된 지속적인 해킹 공격 등 여러 가지 신경써야 할 부분이 많습니다. 하지만 OAuth 2.0 을 사용해 신뢰할 수 있는 플랫폼 (구글, 페이스북, 네이버, 카카오 등) 에 개인정보, 인증 기능을 맡기면 서비스는 인증 기능에 대한 부담을 줄일 수 있습니다. 🌱 OAuth 2.0 주요 용어 Authentication 인증, 접근 자격이 있는지 검증하는..

Spring

Spring - OAuth2.0 + Social Login

🌱 오늘의 주제 : Spring - OAuth2.0 + Social Login 🌱 OAuth2.0 + Social Login

Spring

Spring - web-socket

🌱 오늘의 주제 : web-socket 🌱 web-socket https://www.youtube.com/watch?v=rvss-_t6gzg https://velog.io/@koseungbin/WebSocket WebSocket 이 글은 Spring WebSocket(https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/web.htmlWebSocket 프로토콜은 표준된 방법으로 서버-클라이언트 간 velog.io https://velog.io/@hyunheal/STOMP-client STOMP (client) STOMP (client) velog.io

Spring/Book - 스프링 입문을 위한 자바 객체 지향의 원리와 이해

00B. 자바8 람다와 인터페이스 스펙 변화

🌱 오늘의 주제 : 자바8 람다와 인터페이스 스펙 변화 🌱 람다가 도입된 이유 람다가 도입된 이유는 기업 환경 변화와 프로그래머들의 요구이다. 기업들은 빅데이터들의 분석 및 활용을 통해 기업 전략을 수립하고, 수익을 극대화하고자 하기에, 빅데이터를 프로그램적으로 다룰 수 있는 방법이 필요졌다. 그 방법의 중심에는 멀티 코어를 활용한 분산 처리, 즉 병렬화 기술이 필요하다. 병렬화를 위해 컬렉션 (배열, List, Set, Map)을 강화했고, 이러한 컬렉션을 더 효율적으로 사용하기 위해 스트림을 강화했다. 스트림을 효율적으로 사용하기 위해 함수형 프로그래밍이 나타났고, 다시 함수형 프로그래밍을 위해 람다가 도입되었다. 람다를 위해 다시 인터페이스의 변화가 수반됐다. 람다를 지원하기 위한 인터페이스를 함수..

Spring/Book - 스프링 입문을 위한 자바 객체 지향의 원리와 이해

00A. 스프링 MVC를 이용한 게시판 구축 (2)

🌱 오늘의 주제 : 스프링 MVC를 이용한 게시판 구축 (2) 🌱 서비스 구현 일반적으로 DAO(Mapper)는 데이터베이스 테이블 당 하나를 만든다. 하지만, 사용자에게 제공되는 서비스는 여러 테이블의 정보를 조합해서 제공하는 경우가 많다. 따라서, 하나의 서비스에서 다수의 DAO를 사용하기도 하고 때로는 다수의 서비스가 하나의 DAO를 사용하기도 한다. Service는 DAO와 연동뿐만 아니라 서버 기술 (웹, 클라이언트/ 서버)이나 각 벤더별 데이터 베이스에 종속되지 않는 로직을 구현하는 곳이기도 한다. 🌱 목록 구현 스프링 MVC에서 C, 즉 컨트롤러(controller)의 역할을 수행한 클래스를 추가 후, @Controller 어노테이션을 지정하고 @RequestMapping 어노테이션을 지정한..

Spring/Spring - projects(Web-pages)

Project - Writing-foreign-language / 외국어 글쓰기 프로그램

🍁 프로젝트 설명 자신이 배우고 싶은 언어를 작성해서 전 세계인들이 서로 댓글로 문법 교정 피드백 해주며 writing 실력을 업그레이드 시켜주는 프로그램입니다. Community, Grammar, Review, Live, Message 페이지가 있습니다. https://www.youtube.com/watch?v=C5rlmgVU4V4 🍁 프로젝트 코드 https://github.com/dbfl720/Writing-foreign-language- GitHub - dbfl720/Writing-foreign-language-: 자신이 배우고 싶은 언어를 작성해서 전 세계인들이 서로 댓글 자신이 배우고 싶은 언어를 작성해서 전 세계인들이 서로 댓글로 문법 교정 피드백 해주며 writing 실력을 업그레이드 시켜..

Spring/Spring - tips

복구 하는 방법

🌱 오늘의 주제 : 복구 하는 방법 🌱 복구 하는 방법 파일 오른쪽클릭 -> Team -> show local history -> 원하는 시간대 코드 클릭.

요가하는 개발자
'Spring' 카테고리의 글 목록