반응형

분류 전체보기 316

AWS Route 53 나만의 도메인을 한번 만들고 연결해보자!

지난 포스팅엔 나만의 프로젝트를 한번 배포를 해봤다. 하지만... AWS에선 주소를 이렇게 준다.. 나중에 내 사이트를 홍보할때 저 영문도 모를 숫자들의 나열을 줄수는없다 ㅠㅠ 그래서 본격적으로 나만의 도메인 사이트 이름을 만들고 연결해보자! http://www.freenom.com/en/index.html Freenom - A Name for Everyone Cost Price Free Special www.freenom.com 자 이 사이트를 들어가서 무료 도메인을 하나 생성할것이다. 이 사이트를 진행하려면 순서가있다. 1. 먼저 내가 쓸 도메인이 사용가능한지 확인 무료로 사용할수있는 주소는 .tk .ml .ga .cf .gq 이다. 본인은 이미 .tk를 무료로 구입을 하였기때문에 Not availa..

리눅스 2022.10.19

[프로그래머스, Java] Level2: 할인 행사

문제분석: 간단하게 요약하자면, 정현이가 원하는 10개의 상품이 10일 연속으로 할인을 하는 구간의 갯수를 구하는 문제다. 문제의 할인 상품의 배열의 길이는 10만개다. 요즘엔, 문제 풀기전부터 최적화, 효율성 좋은 코드를 뽑으려고 고민하다 오히려 푸는 시간이 더 오래걸리는것같다. 정작 이런 생각은 코딩테스트 가면 진짜 독이 될수 있다.. 첫번째 접근으로, Queue 를 사용해보고자했다. 그이유는, 매번 10개의 할인구간이 하루가 지날때마다 바뀌는데, 그 할인구간을 매번 바꾸는것보다, 가장 오래된 원소를 빼고, 가장 최근의 원소를 추가하는 (선입 선출 알고리즘을 사용하면) 최적화 방식을 생각했다. -> 오히려 더 복잡하고.. 복잡하다보니 코드 오류가 좀 많이떳다. 결국, 처음으로 돌아와 쉽게 짜기로 생각..

스프링(Spring) 테스트 환경에서 @PostConstruct 비활성화

문제 발생: 새로운 옥션 서비스를 개발했으니, 테스트코드를 한번 짜보려는 상황 입니다. 테스트 요약: 1.옥션 하나를 제목을 지정한 뒤 생성 2. 옥션 꺼내기 3. 꺼낸 옥션과 1번에서 생성한 옥션의 제목이 동일한지 비교 ?!!!!?!!!!! 아니.. 왜안됨? 알고보니 문제가 테스트 부분이아닌, 메인(local환경) 부분 에서 더미데이터로 생성한 @PostConstruct 때문이였다. 해결방법: @Profile을 사용하여 메인, 테스트 환경을 분리하자. 즉, 내가 쓸 @PostConstruct는 메인환경에서만 사용할것이니, 메인 은 메인환경으로 테스트는 테스트로 설정하는것이다. 1.테스트 환경에서 쓸 application.properties 를 복사 붙이기하자. 2. 그 후, 로컬 환경 프로퍼티와, 테스..

프로그래머스 [JAVA] Level1: 숫자 짝꿍

문제분석: 이 문제는 제한사항만 아니면 쉽게 풀수있다. 예를들자면, for( X배열) , for(Y배열) 2중반복문으로 짝꿍 숫자를 찾는것이 가능하다. 하지만 길이가 300만이기때문에 300만*300만 연산은 말이안되기때문에.. 효율적인 코드를 짜야한다. 1. 목표! 데이터 배열은 1번만 돌리자 즉, 최소 O(n) + O(n2) , 300만+300만 = 600만 연산만 사용하자를 목표로두었다. Map을 사용하였다. 첫번째 Map은 X의 배열을 입력받아 Y배열과의 짝궁여부를 확인하는 용도. 두번째 Map인 couple맵은 짝궁여부가 가능하다면, Couple 정보를 입력받는다. 남은건 Couple 맵에 저장된 정보를 바탕으로 문자열을 작성한다. 예외처리로 커플이없으면 -1 , 0으로 시작하는 문자는 0으로 ..

DeleteMapping 리스트(List) 구현 트러블 발생 및 해결

구현할 문제: 여러개의 상품을 선택하여 경매상품삭제 버튼을통해 DeleteMapping 요청을 보내려고한다. Request Body에 리스트를담아서.... deletemapping으로 삭제처리를 하자!! 라는 전략을 짯다. 문제 해결 고찰: 근데 코딩을 하다보니 계속 이런 오류가 발생했다.. No primary or single unique constructor found for interface java.util.List Required request parameter 'idList' for method parameter type List is not present 이런저런 원인 분석을 하였더니, 과거 포스팅을한 부분에서 원인을 알 수 있었다. Delete 부분을 보자, 요청에 Body를 지원하지 않...

네트워크+HTTP 2022.10.03

XSS , CORS, CSRF 의 차이점

1. XSS 란? 이 공격을 한마디로 표현하자면, 스크립트를 사용한 공격이다. XSS의 목적은 쿠키 및 세션탈취 , 광고 등등 주요 타겟이 클라이언트다. 혹시 이런 경험 해본적 없는가? 사이트 또는 게시글을 눌렀는데 이상한 알림이 우수수 뜨거나, 이상한 사이트가 추가로 뜬다거나... 공격 시뮬레이션을 한번 해보겠다. 1. 나쁜 해커놈이 게시글 작성을 한다. 2. 게시글 제목 또는 내용 에 다음과같은 내용을 작성한다. 1 2 // 광고사이트로 이동시키는게 대부분이다. window.location.href = 'https://falsy.me'; cs 컴퓨터 팝니다.. or 상담있습니다. 등등 목적에 맞게안쓰고 이런 스크립트로 작성하는것이다. 자 이걸 제목에다 작성하면... 사용자는 게시글 목록페이지만 로딩하..

스프링 시큐리티 + OAuth2.0 (Kakao편)

이전 포스팅엔 구글 로그인 OAuth 연동을 해봤다. 이번 포스팅엔 kakao Oauth를 연동해보자. 0. 카카오톡 REST API , 시크릿키 받기 https://developers.kakao.com/ Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com 카카오톡 로그인을 한뒤 몇가지 절차를 완료한후, ' 내 어플리케이션 ' 을 클릭하자. 중앙에 보이는 애플리케이션 추가하기를 눌러서 앱 이름과 사업자명을 입력하자. 필자는 테스트용으로 아무렇게나 입력했다. 만들어진 어플을 들어가면 4가지의 키를 받을수있는데, 우린 REST API 키를 가져가면된다...

스프링시큐리티 + OAuth2.0 사용해보자 (Google편)

이전 포스팅에서 이제 OAuth2.0 을 추가로 사용해보고자한다. OAuth란? OAuth는 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단으로서 사용되는, 접근 위임을 위한 개방형 표준이다. 더욱 자세하게 설명하자면, 사용자들이 모든 어플리케이션마다 일일이, 아이디와 비밀번호를 제공하기 귀찮거나, 아이디와 비밀번호를 입력하다 피싱당할 위험이 있으니, 이미 등록해둔 거대 플랫폼(EX: Google, Twitter , KaKao, Naver..) 에서 인증과 토큰을받아서 원클릭 회원가입 And 원클릭 로그인 같은 기능을 구현할수있다. 설명보단 바로 코드로 한번 보자! 0.OAuth2.0 밑준비 (Goog..

스프링 시큐리티를 사용해보자!!

스프링 시큐리티란? Spring Security는 엔터프라이즈 애플리케이션에 대한 인증, 권한 부여 및 기타 보안 기능을 제공하는 Java / Java EE 프레임 워크입니다. 스프링 시큐리티를 사용하면, 프로젝트를 만들때 사용하는 로그인 및 회원가입 구현이 매우 편리하다!! 이전 방식으로 ArgumentResolver와 Interseptor를 구현해서 로그인의 인증절차를 하였지만, 스프링 시큐리티를 사용하면 더 더 편리하다. 0.준비하기 스프링 시큐리티 역시 라이브러리이기 때문에 가져와야한다. 1. 스프링 시큐리티 설정 (Security Config) 클래스 생성 스프링 시큐리티를 사용하려면 웹에다 등록을 해줘야한다. 사용하는 어노테이션의 의미는 다음과같다. @Configuration : 스프링이 Co..

반응형