Computer Engineering 57

Github fork한 repository 잔디 복사하기🌱

fork받아온 repository에 작업할 일이 생겼는데, 커밋한 내역이 잔디에 반영되지 않았다 ㅠ 잔디에 집착하지 말자는 다짐과는 다르게 너무 집착하는 즁....^_^ fork한 repository는 PR이 머지되었을 때 비로소 나의 커밋으로 인정이 된다. 잔디가 심어지는 기준은 내 repository에 커밋을 해야 인정이 되는데, fork는 contribution으로 인정되지 않아 잔디가 심어지지 않는다. 검색해보면 bare를 사용해서 커밋을 옮기고 기존의 repository를 삭제를 하는 방식이 정말 많은데,,, 나같은 경우에는 fork받아온 기존의 repository가 의미가 있기에 삭제하길 원치 않았다. 그래서 잔디를 내가 만든 임의의 repository로 복사하는 방법을 썼다! 1. 새로운 r..

GitHub Contribution 잔디 추가 안되는 현상

분명 커밋을 올렸는데도 불구하고 잔디가 채워지지 않는 현상을 발견했다. 잔디에 집착하는 것을 지양하는 나지만 그래도 왠지 기분이 나쁘다 🤔 지금 생각해보니 꽤 오래전부터 있었던 문제였던 것 같고, 놓쳐버린 잔디가 꽤나 많을 듯하다! 당장 고쳐야겠다. 1. user email 설정 오류 contribution으로 인정 안되는 이유는 여럿이 있는데, 많은 사람들의 원인은 user의 email이 잘못 설정되어 있어서였다. github에 등록된 Email은 오른쪽 상단 프로필을 통해 확인할 수 있다. 그리고 내 프로젝트에 등록된 이메일은 config를 통해 확인할 수 있다. git config user.email 만약 이메일이 잘못 설정되어 있다면 이메일을 바꿔보도록 하자 2. respository url 설정..

Spring boot / Java 서버 애플로그인 api 연동

2020년 4월부터 iOS앱에서 소셜로그인만을 지원하는 앱은 애플로그인을 필수적으로 제공해야한다는 정책이 추가되었다. https://developer.apple.com/app-store/review/guidelines/#sign-in-with-apple App Store Review Guidelines - Apple Developer App Store Review Guidelines Apps are changing the world, enriching people’s lives, and enabling developers like you to innovate like never before. As a result, the App Store has grown into an exciting and vibra..

EC2에 Springboot 배포시 RDS연결 불가 문제

이전에는 잘 되던 배포가 갑자기 안되기 시작했다.... 갑자기라는건 없지만... 나한테는 갑작스러운 문제였다. 오류를 살펴보니 MySQL connection문제임을 알 수 있다. RDS의 MySQL을 연결해둔 상태였는데 갑자기 안됐다. 해당 문제에 대해서는 여러가지 원인이 있겠지만 나같은 경우 EC2에 올라와있는 jar파일이 RDS로 접근할 수 없었던게 이유였다. 생각해보니 전에 RDS인바운드 보안 규칙을 팀원들의 ip로 한정지었던게 생각이 났다...! 같은 VPC를 사용중이라 당연히 될 줄 알았지만 크나큰 오해였다...! EC2의 private IP를 RDS의 인바운드규칙 소스에 추가해주면 해결이 된다..! 여기서 중요한 점은 publicIP가 아닌 privateIP를 추가해줘야 한다는 것이다. 같은 ..

Springboot Querydsl 설치, JpaQueryFactory 설정

Springboot에서 JPA를 많이 사용하지만 JPA로 복잡한 쿼리를 수행하기에는 무리가 있다. querydsl를 사용하면 보다 간편하게 쿼리를 수행할 수 있다. build.gradle에 추가할 부분 //for plugin id "com.ewerk.gradle.plugins.querydsl" version "1.0.10" //for dependencies implementation 'com.querydsl:querydsl-jpa' //querydsl설정 def querydslDir = "$buildDir/generated/querydsl" querydsl { jpa = true querydslSourcesDir = querydslDir } sourceSets { main.java.srcDir query..

백준[1213] -팰린드롬 만들기

팰린드롬이란 거꾸로 읽어도 제대로 읽는 것과 형태가 같은 문장을 이야기한다 (내이름은 이효리~ 거꾸로해도 이효리~) 진짜 작은 실수로 조금 오래걸렸다. 그리고 Collection을 많이 써서 시간 초과가 날까 걱정했지만 이정도는 괜찮은 것 같다. 검색해보니 반례에 대해서 예민한 문제인 것 같다. 홀수개인 문자가 포함되어 있어도 이를 가운데 배치시키면 팰린드롬이 가능하다. import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.*; import java.util.stream.Collectors; public class Main { public static void main(String[] args) throws Ex..

백준[2805] java -나무자르기

이 문제에서 알아야할 점은 두가지이다. 1.이분탐색으로 풀 것 2.long타입 선언 일단 문제를 보자 이전에 공부했던 이분탐색을 생각해냈다. 특정한 값을 구해야할 때 그 시간을 줄여주는 좋은 방법이다. 이문제에서 long타입을 써야 하는 이유는 나무의 높이가 최대 1,000,000,000이기 때문이다 int형으로는 계산할 수가 없다. import java.util.*; import java.util.stream.Collectors; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n= sc.nextInt(); long height = sc.nextInt(); long[] ..

Springboot RESTAPI 아임포트 가상 결제

Springboot로 REST API를 구현하는 중 가상결제 기능을 구현하고자 했다. 아임포트를 사용하여 카카오페이 결제 과정을 거쳐 실제 구매처럼 재연했다. 정말 정말 쉬운 과정이지만 RestAPI 구현중임을 간과해서,,,조금 오래 걸렸다. 이를 진행하는 프로젝트의 클라이언트는 iOS로 구현했다. 실제 결제화면을 iOS에서 확인하면 좋았겠지만 팀의 사정상 그렇게 하지 못하고 웹에 내가 직접 구현했다. 즉, PC웹 환경에서 결제를 진행할 것이다. 일단 아임포트 홈페이지의 대쉬보드에 들어가고 회원가입,로그인을 해야한다!!!! admin.iamport.kr/users/login 로그인 - 아임포트 관리자 가입하신 Email주소로 비밀번호 변경 링크를 발송합니다. admin.iamport.kr 로그인을 하면 ..

백준[1244]- 스위치 켜고 끄기

진짜 문제는 끝까지 읽어야 한다. 쉬운 문제였지만 출력 조건을 제대로 안읽어서 자꾸 출력 오류가 났었다.... 반성반성 문제 그대로 구현만하면 되는 쉬운문제다. import java.util.*; public class Main { private static int[] arr; public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = Integer.parseInt(sc.nextLine()); String inputStr = sc.nextLine(); String[] inputArr = (inputStr).split(" "); arr = new int[n+1]; arr[0]=0; for(int i=0;i