my code archive
my code archive
article thumbnail
[개인 프로젝트] 스프링 시큐리티(Spring Security), OAuth2 네이버 카카오 로그인 API 사용하기

🤍스프링 시큐리티(Spring Security)란 스프링 기반의 애플리케이션의 인증, 인가 등을 담당하는 스프링 하위 프레임워크 인증과 권한에 대한 부분을 Filter 흐름에 따라 처리함 보안에 대해 체계적으로 다양한 옵션을 제공해주므로 개발자가 보안 관련 로직을 작성하지 않아도 됨. 스프링 시큐리티, SNS 로그인 구현하기 1. build.gradle 관련 의존성 추가 implementation 'org.springframework.boot:spring-boot-starter-oauth2-client' implementation('org.springframework.session:spring-session-jdbc:') testImplementation 'org.springframework.securi..

article thumbnail
[개인 프로젝트] OpenAPI 조회해온 뮤지컬 정보 화면 목록 뿌리기+Bootswatch 부트스트랩

이제 뮤지컬 데이터를 DB에 INSERT까지 했으니 목록을 SELECT할 차례!! 이번에 개인 프로젝트를 하는 목적은 여러 명이서만 해봤던 프로젝트 진행 과정을 처음부터 끝까지 내 힘으로 하면서 공부하는 목적이 제일 크기 때문에 엄청 큰 규모로 할 생각도 없고 일단 혼자 힘으로 해결하는 데에 의미가 가장 크다. 그래서 프론트단은 타임리프(Thymeleaf) + 부트스트랩을 사용하기로 했다. 🤍DTO, Service, Controller, Repository 작성 -먼저 Entity와 별개로 DTO를 추가로 작성해 주었다. JPA로 처리할 때 변경이 적은 Entity 대신 DTO 객체를 만들어 원하는 컬럼의 기능만 뽑고 데이터를 교환하기 위해서. MusicalDTO 1 2 3 4 5 6 7 8 9 10 1..

article thumbnail
[개인 프로젝트] KOPIS 공연 Open API 가져오기, XML JSON 파싱, DB 저장, 스프링 배치(Spring Batch)

내가 프로젝트를 시작한지 일주일 되었는데 글을 이제서야 쓰는 이유는...? 이 작업만 거의 일주일이 걸렸기 때문이다...ㅎㅎㅎ Open API를 가져다 써본 경험이 없어서 처음이었고 + 보통 JSON 형식이던데 KOPIS API는 XML형식이라 파싱하는 것부터 애를 먹었다ㅠㅠ 그리고 DB 넣는 거!!! 이게 너무너무 어려웠다... 하고 나니 간단한데... 암튼 구글링을 했을 때 정보가 부족하다는 생각이 들어서 이것부터 정리를 해보려고 한다. 🤍XML 형식의 Open API 데이터 JSON 형식으로 파싱하기 1. 가장 먼저 Open API를 사용하기 위해 필요한 서비스키를 신청한다. 이 과정은 간단하기 때문에 생략. 2. 그다음으로 사이트에 개발에 필요한 가이드라인이 올라와 있다. 나는 뮤지컬 목록을 불러..

article thumbnail
[개인 프로젝트] 뮤지컬 커뮤니티 만들기 - 준비

개인 공부 + 이직 위해 미니프로젝트 해보기!! 시작한지 일주일정도 됐고 뒤늦게 블로그에 차근차근 정리해보기로 한다. 학원 스터디원들과 해본 것 말고 혼자서 처음부터 끝까지 다 해보는 것은 처음인데 혼자 하니까 확실히 공부는 많이 되는 것 같다. 💡 프로젝트 소개 뮤지컬을 기반으로 한 커뮤니티 사이트 구축 뮤지컬의 대중적인 인지도가 높아지고 있는 반면에 뮤지컬 팬들이 자유롭게 소통할 수 있는 커뮤니티 사이트는 아직 마련되어 있지 않음. 👩‍💻 작업 목표물 (아직 경험이 없는) Open API 가져와서 쓰기 -> 신청, XML JSON 파싱, DB까지 넣기 뮤지컬 목록 출력 로그인, 회원가입 뮤지컬 평점 회원 게시판 💡 개발 환경 Java 11 IntelliJ SpringBoot + Thymeleaf My..

article thumbnail
구글 애드센스 핀(PIN)번호 우편물 도착 & 등록 방법
💻 my code archive/📝Etc. 2022. 5. 30. 09:55

여러 차례 까이고(??) 구글 애드센스 광고 게재를 시작한 지 벌써 두 달이 다되어간다! 다시 봐도 감격스러운 애드센스 게재 승인(??)메일 ㅋㅋㅋ 그리고 애드센스 누적금액 10달러 초과하면 구글 애드센스에서 핀번호(PIN)가 들어있는 우편물을 보내준다! 그래서 이 우편물이 내게 발송되었다는 것은 수익금을 받을 수 있는 최종 단계까지? 도달했다는 뜻이라고 한다 후훗. 아직 광고 클릭수나 잔고가 소소하긴 하지만 이런거 오니까 너무 신기함ㅋㅋㅋㅋ 암튼 우편물은 보통 2~4주 정도 걸린다고 하는데 발송 시점에서 4개월동안 핀번호를 입력 못하면 광고가 중단될 수 있어서 만약 한 달?정도 지났는데 우편물이 오지 않는다면 우편물 재발송을 신청하는 게 좋다고 한다. 구글..해외에서 멀리 오는 우편물이라 조마조마하면서..

article thumbnail
노드 공부 기록(12) - 실시간 경매 시스템 만들기, 웹 소켓, SocketIO

웹 소캣 HTML5에 새로 추가된 스펙 실시간 양방향 데이터 전송을 위한 기술, HTTP와 다르게 WS라는 프로토콜을 사용함. SocketIO 웹 소캣을 편리하게 사용할 수 있도록 도와주는 라이브러리 실시간 경매 시스템 만들기 1. npm init / package.json 파일 작성 2. 사용자 모델, 제품 모델, 경매 모델 구성 user.js auction.js good.js DB에도 테이블이 생성되었다. 3. 로그인, 미들웨어 라우터 생성, 프론트 코드 작성(생략) 4. 서버센트 이벤트 사용하기 온라인 경매이므로 모든 사람이 같은 시간에 경매가 종료되어야함. 모든 사람에게 같은 시간이 표시되어야함. =>서버센트 이벤트를 사용해 시간을 받아오기(주기적으로 서버 시간 조회하는 경우 양방향 통신 불필요)..

[SQLD / 자격증 공부] 요약 정리 6. 슈퍼타입, 서브타입 모델

슈퍼 타입/서브 타입 모델의 성능 고려 방법 업무를 구성하는 데이터 특징을 공통과 차이점의 특징을 고려하여 효과적으로 표현할 수 있음. 슈퍼 타입 : 공통 부분을 슈퍼 타입으로 모델링 서브 타입 : 공통으로부터 상속받아 다른 엔티티와 차이가 있는 속성만 모델링 논리적 데이터 모델에서 주로 이용(=분석 단계에서 많이 쓰임) 슈퍼/서브 타입 데이터 베이스 성능 저하 원인 3가지 트랜잭션은 항상 일괄 처리 & 테이블 개별 유지 => Union 연산에 의해 성능 저하 트랜잭션은 항상 서브타입 개별 처리 & 테이블 하나로 통합 => 불필요하게 많은 양의 데이터가 집약되어 성능 저하 트랜잭션은 항상 슈퍼+서브 타입 공통 처리 & 테이블 개별 유지 => 조인에 의해 성능 저하 슈퍼/서브 타입 변환 기준 데이터량이 소..

article thumbnail
[SQLD / 자격증 공부] 요약 정리 5. 반정규화 기법

📖반정규화 기법 테이블 반정규화 테이블 병합 1:1 관계 테이블 병합 1:M 관계 테이블 병합 슈퍼/서브 타입 테이블 병합 테이블 분할 수직 분할 : 칼럼 단위의 테이블을 디스크 I/O를 분산처리하기 위해 테이블을 1:1로 분리하여 성능 향상(트랜잭션의 처리되는 유형을 파악이 선행되어야함.) 수평 분할 : 로우 단위로 집중 발생되는 트랜잭션을 분석하여 디스크 I/O 및 데이터 접근의 효율성을 높여 성능을 향상하기 위해 로우 단위로 테이블을 쪼갬 테이블 추가 중복 테이블 추가 : 다른 업무이거나 서버가 다른 경우 동일한 테이블 구조를 중복하여 원격조인을 제거하여 성능을 향상 통계 테이블 추가 : SUM, AVG 등을 미리 수행하여 계산해 둠으로써 조회 시 성능을 향상 이력 테이블 추가 : 이력 테이블 중 ..

반응형
반응형