목록분류 전체보기 (186)
hmk run dev
AWS > EC2 선택 > 접속하고자 하는 인스턴스 우클릭 > 연결 최하단에 있는 예 부분을 복사해서 cmd , git bash 등에 그대로 붙이고 접속하면 안되고 ssh -i "key_path" ubuntu@ec2-3-~~~~~~ "key_path"대신 "C:\Users\82105\Desktop\aws\key.pem" 발급받은 key 경로를 입력해줘야 한다 ^^ 이걸로 삽질을 하다니...
젠킨스 설치 실행 local에 띄우기 이 부분은 생략 검색하면 많다...! 1. 젠킨스 관리 > 플러그인 설치 (미리 설치되어 있는 경우도 있음) - github - github api - maven (메이븐 빌드 시) 2. 젠킨스 관리 > Global tool configuration - JDK 설정 - MAVEN 설정(왠만하면 3 이상 추천) 3. new item > 새프로젝트 만들기 - maven project 선택 - 프로젝트 이름 입력 4. general 탭 - github project 체크 - 배포할 github 링크 복사 붙여넣기 - 소스관리 git 다시 링크 붙여넣기 - */main 브랜치 선택 - 일단은 빌드 트리거는 모두 체크해체.. - goals and options > clean ..
백업하고자 하는 데이터 베이스 우클릭 > 도구 > Dump database 테이블 선택가능 백업 완료가 되면 파일이 생성된다. 더블클릭으로 파일을 열어보면 DB복구를 위한 쿼리문이 있다. 그냥 실행시키는 건 조금 야만? 적인 방법 같으니 복구하고자 하는 DB우클릭 > 도구 > Restore Database > Input File에 백업된 파일 업로드 Start 버튼 클릭! 복구완료~!
이번 연도는 큼지막한 터닝포인트들이 유난히 가득했었다.. 디자이너에서 개발자로 대구에서 서울로 열심히에서 열심히와 꾸준히로 돌아보면 아쉬웠던 선택들도 많았지만 한 번쯤 자신에게 고생했다고 토닥여줄 만큼 바쁘고 치열하게 보냈던 것 같다. 나름대로 만족? 개발의 ㄱ 자도 모르던 올해 초부터 부트캠프참가 리액트를 왜 쓰는지도 모르면서 무작정 취업을 위해서 배웠던 얄팍한 프레임워크 지식 취업 후 너무나도 부족했던 개발 지식과 기초 등을 깨닫고 하루하루 우직하게 공부했다 :) 개발뿐만 아니라 일에 몰입하는 방법 시간을 효율적으로 투자하는 방법 등도 잘 배운 것 같다! 벌써 개발자가 된 지 6개월이 되어 가고 있다...! 웃긴 이야기지만 리액트 개발자?라는 아주 가벼운 아이덴티티로 입사해 여러 우여곡절을 겪은 후 ..
어떻게 좋은 쿼리를 짜 효율적으로 DB에서 데이터를 가지고 올 수 있을까?라는 질문에 80%가 넘는 답변은 "실행계획 떠봐" 였다. 상당히 중요한 부분이란 걸 알고 있었지만 어렴풋이 알고 넘어갔었기에 이렇게 포스팅을 남겨 제대로 정리해 본다 :) 조회는 이렇게 실행할 쿼리 앞에 EXPLAIN을 쓰거나 마우스 우클릭 > 실행 > 실행계획 보기 (DBeaver의 경우)로 조회가 가능하다. explain select * from w_work; 아래와 같은 결과를 볼 수 있는데 실행계획에서 각 칼럼이 의미하는 것을 정리해보겠다. id 컬럼 더보기 SELECT쿼리를 구분하기 위한 용도로 쓰인다. ( 몇 개의 SELECT가 실행되었는지 확인할 수 있다. ) - SELECT 쿼리에 join 등을 통해 여러 개의 테이..
나는 이때까지 대부분의 loop 문을 for문으로 사용했었는데 문득, 다른 loop문에 대해서도 궁금해졌다 분명 각기 다른 특징이 있어서 나눠놨을거란 생각으로 여러가지 loop함수에 대해 알아보고자 작성하는 글이다. 1. for for (let i = 0; i < arr.length; i++){ console.log(arr[i]) } 가장 먼저 내가 제일 자주 쓰는 for loop - 빠르고 단순하다 손에 익었다. - 모든 자료형에서 사용가능 - 중간에 loop를 건너뛰거(continue)나 종료(break)가 가능하다. - 반복범위를 조절할 수 있다 ( i++, i--, i += 2 ) - i를 index값으로 사용할 수 있다. 2. forEach arr.forEach(function(v,i,arr){..
PL/SQL 함수를 이용해 부모 row에 대한 정보를 가져오는 쿼리 대신 함수 없이 조회할 수 있는 방법으로 데이터를 조회 해봤다..! PL/SQL이 좀 더 빠르긴 하지만 이번에 MYSQL 버전 업그레이드 이후로 함수생성 권한을 받는 것도 까다로워 졌고 PL/SQL 문법도 이전 버전과 맞지 않는 부분이 조금있는 것 같아서 시도해본 방법이다...;; 사실 특별한 방법 이랄게 있나 싶다. PL/SQL로 하던 작업을 여러번의 inner join(부모 row에 대한 정보가 확실할때만)을 이용해 가장 상위부모 row의 데이터를 가지고 오면 된다. 더 효율적인 방법이 있을 것 같은 냄새가 솔솔나는 쿼리다... 일단 적용해놓고 추후에 리팩토링 하기로 했다..! left join ( select // 개편 후 카테고리..
소프트웨어의 생명주기 폭포수 모델 폭포수라는 단어에서 유추할 수 있듯이 다시 되돌아 갈 수 없는 방식으로 각 단계를 확실하게 마무리 해야한다. - 이전으로 돌아갈 수 없으니 확실히 마무리 - 2개 이상의 과정을 병행할 수 없음 - 개발의 방향을 바꿀수 있는 단계 x 초기 계획 그대로 만들어야 한다. - 반드시 메뉴얼이 필요하다. 프로토타입 모델(원형 모델) 프로토타입을 만들어서 문제점을 파악하고 프로토타입을 기초로 한 완전한 소프트웨어를 만드는 방식 - 시제품, 견본이라고도 함 - 빠른 개발을 위해 디자인이나 마감처리 등을 무시하고 최대한 기능적인 부분만 만듦(인터페이스 중심개발) - 폭포수 모형의 단점인 개발 후 오류 대처에 대한 부분을 보완할 수 있음 스파이럴 모델(나선형 모델) 대규모 프로젝트에 적..
호출하는 api를 찾으려면 네트워크 탭 > Fetch/XHR 을 선택해 손쉽게 찾을 수 있다. 페이징이나 무한스크롤로 되있는 ajax 주소를 알아내 개발자 도구에서 함수로 선언해준다. let crawling_list = []; function getData(){ for(i=1;i
계층형 카테고리를 구현하기 위해 만들어놓은 column을 이용해 해당 카테고리의 가장 상위 카테고리번호를 알수 있는 PL/SQL함수를 구현해 보았다. 부모 카테고리 컬럼 - category_no 자식 카테고리 컬럼 - p_category_no CREATE FUNCTION `f_get_category_new_parent`(idx bigint) RETURNS bigint(20) BEGIN DECLARE _id bigint; // 변수 선언 DECLARE _p_category_no bigint; // 자식 카테고리 번호 DECLARE _category_no bigint; // 부모 카테고리 번호 SET _id = idx; // 파라미터로 받은 변수 _id에 할당 IF _id IS NULL THEN // nul..