분류 전체보기
-
[Spring] Spring 파일업로드 & Postman 파일업로드 테스트Spring/Spring Framework 2022. 10. 4. 15:00
1. 환경 Spring Framework tomcat 8.5 Postman 9.31.0 2. 세팅 1) pom.xml commons-io commons-io 2.2 commons-fileupload commons-fileupload 1.3.1 2) web.xml MultipartFilter org.springframework.web.multipart.support.MultipartFilter MultipartFilter /* 3) bean 등록 나는 dispatcher-servlet.xml 에 추가했다. 환경에 따라 다를 수 있음! 4) context.xml WEB-INF/web.xml ${catalina.base}/conf/web.xml allowCasualMultipartParsing="true" p..
-
[Programmers] 고양이와 개는 몇 마리 있을까문제 풀이/SQL 2022. 3. 25. 09:50
출처: 프로그래머스 - 고양이와 개는 몇 마리 있을까 언어: MySQL 1. 풀이 과정 고양이와 개가 각각 몇 마리인지 구하려면 종류별로 묶어서(GROUP BY) COUNT로 그룹별 row수를 구하면 된다 이 때, 고양이가 개보다 먼저 조회되야 하기 때문에 ORDER BY ANIMAL_TYPE 을 통해 알파벳 순서 오름차순으로 정렬했다 2. 쿼리문 SELECT ANIMAL_TYPE , COUNT(*) COUNT FROM animal_ins GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE ;
-
[LINUX] 압축 파일 관리 - gz, tarOS/LINUX 2022. 3. 7. 09:26
gz - gz은 한 개의 파일만 압축 가능 1) 압축하기 gzip [파일명] 2) 압축풀기 gzip -d [파일명] 3) 예시 gzip test.txt # test.txt 파일을 test.gz 으로 압축 # ( 기존 test.txt 파일은 없어지고 gz 파일이 생성된다 ) gzip -d test.gz # test.gz 파일 압축 풀기 tar - tar는 여러개의 파일 압축 가능 - 여러 옵션을 통해 다른 형식의 파일로 압축/풀기 가능(.tar, .tar.gz, tar.xz 등) 1) 옵션 옵션 설명 -c 지정한 파일이나 디렉터리를 하나로 묶어 새로운 tar 파일 생성 -r 기존의 tar 파일 뒤에 파일을 추가 -v 어떤 명령을 실행할 때 대상이 되고 있는 파일들을 보여줌 -f 파일명 작업 대상이 되는 t..
-
[Programmers] 쿼드 압축 후 개수 세기문제 풀이/Algorithm 2021. 5. 16. 16:52
출처: 프로그래머스 - 쿼드 압축 후 개수 세기 언어: JAVA 1. 풀이 과정 문제를 요리보고 저리봐도 이건 재귀함수 문제다! (반복적으로 계속 압축하고 있기 때문) ☝ 2차원 배열의 모든 수가 같은지 확인 ✌ 다를 시, 영역을 1/4로 나누기! 다를 시, 해당 숫자 카운트++ 위의 과정을 배열의 길이 가 1이 될 때까지 반복하면 총 0과 1의 개수가 세어진다. 2차원 배열의 모든 수가 같은지 확인할 땐, 기준값(비교하려는 영역의 첫번째 값. 즉 첫번째 재귀 값에서는 arr[0][0])과 다른 값 존재 시 바로 영역 나누기(✌번째 과정)으로 넘어간다. 그러나 다른 값이 없는 경우 해당 숫자의 카운트를 증가시키고 재귀를 끝낸다. 그리고 영역을 나눌 땐 4개의 영역으로 나누기 때문에 4개의 재귀함수를 호출..
-
[MySQL] You can't specify target table '테이블 명' for update in FROM clause.기타/오류 모음 2020. 11. 20. 10:00
1. 오류 배경 & 내용 UPDATE의 WHERE절에 서브쿼리를 넣어 해당 결과 값을 갖는 것만 업데이트를 하려는데 SQL 1093 에러가 등장했다. 사용한 쿼리문(테이블 명과 컬럼 명은 다르게 수정했다)과 에러 내용은 아래와 같다. UPDATE TB_A SET NAME = '강동원' WHERE ID IN ( SELECT B.ID FROM TB_B AS B INNER JOIN TB_A AS A ON A.ID = B.ID WHERE A.AGE > 20 ) SQL Error [1093] [HY000]: You can't specify target table '테이블 명' for update in FROM clause 2. 해결 방법 MySQL은 UPDATE시 자기 테이블의 값을 바로 사용 못 한다. 따라서!..
-
[Programmers] Hash - 위장문제 풀이/Algorithm 2020. 7. 8. 10:42
출처: 프로그래머스 - 위장 언어: JAVA 1. 풀이 과정 이 문제는 스파이가 갖고있는 의상의 종류마다 갯수를 구해서 경우의 수를 구하면 된다. 종류의 갯수는 HashMap을 이용하여 카운트 할 수 있다. 2. 주요 코드 import java.util.*; class Solution { public int solution(String[][] clothes) { HashMap spy = new HashMap(); int answer = 1; for (int i = 0; i < clothes.length; i++) { if (spy.containsKey(clothes[i][1])) { spy.put(clothes[i][1], spy.get(clothes[i][1]) + 1); } else { spy.put..
-
[Programmers] Hash - 전화번호 목록문제 풀이/Algorithm 2020. 7. 8. 10:18
출처: 프로그래머스 - 전화번호 목록 언어: JAVA 1. 풀이 과정 phone_book 배열에서 첫 번째부터 순서대로 pre로 정하여 배열 안의 pre를 제외한 다른 값들과 각각 비교한다. 두 값을 비교할 때, pre가 다른 값으로 시작하는지 알아보기 위하여 startsWith()라는 메소드를 이용했다. ( startsWith()를 몰랐다면 코드의 줄이 더 많았을 것이다… ) 2. 주요 코드 import java.util.*; class Solution { public boolean solution(String[] phone_book) { boolean answer = true; String pre = "", post = ""; for(int i = 0; i < phone_book.length; i++..
-
[Programmers] Hash - 완주하지 못한 선수문제 풀이/Algorithm 2020. 7. 8. 09:52
출처: 프로그래머스 - 완주하지 못한 선수 언어: JAVA 1. 풀이 과정 이 문제는 참여자 명단과 완주자 명단을 정렬하여 두 명단의 같은 index의 값을 비교하여 해결할 수 있다. 만약 참여자 명단에 있는 모든 사람이 완주자 명단에도 있다면?? 배열을 정렬했을 때, 두 배열은 완벽히 같을 것이다. (같은 index의 값이 모두 같다!) 따라서 같은 index의 값만 비교해 준다면 누가 완주하지 못했는지 알 수 있다! 참여자 명단 0 1 2 "eden" "kiki" "leo" 완주자 명단 0 1 "eden" "kiki" 위의 두 표는 첫 번째 입출력 예의 참여자 명단과 완주자 명단을 정렬한 결과다(index와 값). 얼핏 봐도 index 0 과 index 1 의 값은 두 배열이 같은데 index 2 의..