실전 프로젝트) Apoorpoor - 아이템 필터
·
프로젝트 회고
아이템 필터 이슈 내용 나는 주로 CRUD를 맡다 보니 트러블 슈팅이 주로 CRUD내용이다. 중첩 for문의 처리 처음 나는 아이템을 구매하면 구매한 아이템리스트를 따로 조회할 줄 알았는데 유저플로우와 프론트의 요청에 따라 한 화면에 "구매하지 않은 아이템", "구매한 아이템", "착용 중인 아이템"을 구분해서 데이터를 프론트에게 보내야 했다. 직관적으로 중첩 for문 이 생각났다. 하지만 나도 이제 어엿한 개발자가 되는 과정에서 중첩 for문 은 정말 피하고 싶었다. 중첩 for문을 사용한다면 아래의 그림과 같이 되었다. ItemList를 쭉 나열한 뒤 각각의 for문으로 상태를 파악하여 필터링을 하는 구조이다. 시간복잡도는 O(n²)이다. 지금 현재는 아이템의 개수가 50여 개 이므로 큰 문제는 아니..
실전 프로젝트) Apoorpoor
·
프로젝트 회고
프로젝트 명 나만의 거지 키우기 - 어푸어푸 프로젝트 소개 조금이라도 절약하고자 하는 현대인들 사이에서 유행인 "거지톡"에서 기획 아이디어를 얻었다. 기본적인 가계부 기능에 나만의 거지 캐릭터인 푸어의 포인트를 모아 옷을 입혀 자랑하고, 다른 이용자들과 지출 내용에 대한 오픈 채팅이 가능한 서비스이다. 프로젝트 링크 어푸어푸 개발 기간 2023.05.19 ~ 2023.06.23 깃허브 링크 Front-End Git GitHub - Apoorpoor/Apoorpoor_Frontend Contribute to Apoorpoor/Apoorpoor_Frontend development by creating an account on GitHub. github.com Back-End Git GitHub - Apoo..
컴퓨터) CPU와 메모리
·
컴퓨터 탐구
CPU와 메모리 CPU (Central Processing Unit, 중앙 처리 장치) 기계어로 쓰인 컴퓨터 프로그램의 명령어를 해석하여 실행한다. CPU는 프로그램에 따라 외부에서 정보를 입력받아, 이를 기억하고, 연산하며, 결과를 외부로 출력한다. CPU는 컴퓨터 부품과 정보를 교환하면서 컴퓨터 전체의 동작을 제어한다. CPU의 기본구성 레지스터 CPU안에는 여러 개의 레지스터가 존재하고 각기 다른 이름과 역할을 가지고 있다. CPU에서 처리할 명령어 및 값들을 임시로 저장하는 역할. 산술논리연산장치(ALU) 비교, 판단, 연산을 담당 ALU의 구성 가산기 - 2개 이상의 입력된 수의 합을 계산하는 논리 회로 보수기 - 보수를 처리하는 논리회로 누산기 - 산술 및 논리 연산의 결과를 일시적으로 계산하..
스프링) SpringSecurity - 11) Oauth2.0 네이버 로그인 완료
·
자바 탐구
Oauth2.0 네이버 로그인 완료 https://developers.naver.com/main/ NAVER Developers 네이버 오픈 API들을 활용해 개발자들이 다양한 애플리케이션을 개발할 수 있도록 API 가이드와 SDK를 제공합니다. 제공중인 오픈 API에는 네이버 로그인, 검색, 단축URL, 캡차를 비롯 기계번역, 음 developers.naver.com application.yml spring: security: oauth2: client: registration: naver: client-id: client-secret: scope: - name - email - profile_image client-name: Naver authorization-grant-type: authorizat..
스프링) SpringSecurity - 10) Oauth2.0 페이스북 로그인 완료
·
자바 탐구
Oauth2.0 페이스북 로그인 완료 https://developers.facebook.com/ Meta for Developers 꿈의 아틀리에 창조 BUCK의 크리에이터와 개발자로부터 Meta Spark를 사용하여 DIOR Beauty를 위한 AR 경험을 설계 및 빌드하는 과정에 대한 비하인드 스토리를 들어보세요. Presence Platform Meta의 Presence Pl developers.facebook.com 화면의 우측 상단 "내 앱"을 클릭한다. "앱 만들기" 를 클릭한다. 필요한 부분에 체크를 하고 "다음"을 클릭한다. 필요한 부분에 체크하고 "다음"을 클릭한다. 필요한 부분을 입력하고 "앱 만들기"를 클릭한다. "제품" 탭 -> "구성" -> "빠른시작"을 클릭한다. "웹"을 클릭한..
스프링) SpringSecurity - 9) Oauth2.0 구글 로그인 및 자동 회원 가입 진행 완료
·
자바 탐구
Oauth2.0 구글 로그인 및 자동 회원 가입 Oauth2User는 user의 정보를 Attributes() 안에 담고 있다. 이는 Map형식이다. getAttributes : { sub=000000000000000000000, name=xxx, given_name=xx, family_name=x, picture=https://lh3.googleusercontent.com/a/AAcHTtcU7e8jEeWSfsxjs8_sxp_U1XoKdWQ5HJFQNPqt=s96-c, email=xxx@gmail.com, email_verified=true, locale=ko } PrincipalDetails package com.example.security1.auth; import com.example.securit..
스프링) SpringSecurity - 8) Oauth2.0 Authentication객체가 가질 수 있는 2가지 타입
·
자바 탐구
Oauth2.0 Authentication객체가 가질 수 있는 2가지 타입 ClientRegistration : 로그인과 관련된 서버의 정보가 담겨있다. 어떤 Oauth로 로그인했는지 확인이 가능하다. IndexController package com.example.security1.controller; import com.example.security1.auth.PrincipalDetails; import com.example.security1.model.User; import com.example.security1.repository.UserRepository; import org.springframework.beans.factory.annotation.Autowired; import org.spri..
스프링) SpringSecurity - 7) Oauth2.0 구글 회원 프로필 정보 받아보기
·
자바 탐구
Oauth2.0 구글 회원 프로필 정보 받아보기 User Entity package com.example.security1.model; import jakarta.persistence.*; import lombok.Data; import org.hibernate.annotations.CreationTimestamp; import java.sql.Timestamp; @Entity @Data public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column private String username; @Column private String password; @Column private Stri..
오지랖 토끼
'분류 전체보기' 카테고리의 글 목록 (8 Page)