일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 자바 스트림
- java8
- 프로그래머스
- LeetCode SQL
- SQL 문제풀이
- spring boot
- 구글로그인
- python
- 코틀린 클래스
- oauth2
- MSA
- 파이게임
- oracle
- 자바스크립트
- 스프링부트 채팅서버
- Spring
- 자바8
- 스프링부트
- springboot
- pygame
- SQL프로그래머스
- 오라클
- js
- kotlin 클래스
- Leetcode
- SQL
- javascript
- 스프링
- mysql
- 스프링시큐리티
- Today
- Total
목록분류 전체보기 (93)
웅겹살의 프로그래밍 삼매경
로그(Log)란 프로그램 개발이나 운영 시 발생하는 문제점을 추적하거나 운영 상태를 모니터링하기 위한 텍스트이다. System.out.println(); 를 사용하여 로그를 확인할 수 있지만 이보다 로그를 기록하는 클래스를 만들어 사용하는 것이 더 나은 방법이다. (실무에서 Logging 방식을 사용한다) log4j2 는 다음과 같은 로그 레벨을 가진다. TRACE > DEBUG > INFO > WARN > ERROR > FATAL INFO로 셋팅하면, INFO, WARN, ERROR, FATAL은 기록된다. FATAL : 아주 심각한 에러가 발생한 상태를 나타낸다. ERROR : 어떠한 요청을 처리하는 중 문제가 발생한 상태를 나타낸다. 프로그램 동작에 큰 문제가 발생했다는 것으로 즉시 문제를 조사해야..
Session Cookie 저장장소 Server Client(브라우저 로컬) 형식 Object Text 만료되는 시점 모름 쿠키 저장시 설정(옵션) ⭐ 설정을 안하면 브라우저 종료 시 용량제한 무제한 쿠키당 4kb, 도메인 당 20EA 쿠키와 세션의 차이 쿠키와 세션은 비슷한 역할을 하며, 동작원리도 비슷하다. 그 이유는 세션도 결국 쿠키를 사용하기 때문 가장 큰 차이점은 사용자의 정보가 저장되는 위치. 쿠키는 서버의 자원을 전혀 사용하지 않으며, 세션은 서버의 자원을 사용. 보안 면에서 세션이 더 우수하며, 요청 속도는 쿠키가 세션보다 더 빠르다. 그 이유는 세션은 서버의 처리가 필요하기 때문. 쿠키는 클라이언트 로컬에 저장되기 때문에 변질되거나 request에서 스니핑 당할 우려가 있어서 보안에 취약..
https://programmers.co.kr/learn/courses/30/lessons/59040 코딩테스트 연습 - 고양이와 개는 몇 마리 있을까 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr -- 코드를 입력하세요 SELECT ANIMAL_TYPE, COUNT(ANIMAL_TYPE) count FROM ANIMAL_INS WHERE ANIMAL_TYPE IN ('Cat', 'Dog') GROUP BY ANIMAL_TYPE ORD..
https://programmers.co.kr/learn/courses/30/lessons/59413?language=oracle 코딩테스트 연습 - 입양 시각 구하기(2) ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다. ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물 programmers.co.kr 입양 시각 구하기(1) 의 심화버전이다 1. ORACLE 가상테이블 2개 만들어서 LEFT OUTER JOIN시켜서 뽑아냈다 첫번째 가상테이블은 00시부터 23시까지 HOUR를 뽑아내다. 참고한 블로그 url 첨부한다. https:/..
입양 시각 구하기(1) 풀어보자 오라클, MYSQL 둘다 사용해보겠다. https://programmers.co.kr/learn/courses/30/lessons/59412 코딩테스트 연습 - 입양 시각 구하기(1) ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다. ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물 programmers.co.kr 오늘의 문제 9시~20시 사이의 데이터를 HOUR만 잘라서 GROUP BY하서 노출하면 될 것 같은 느낌적인 느낌이다. Oracle SELECT TO_CHAR(DATETIME, 'HH24')..
@Valid 어노테이션으로 파라미터 검증하기 따로 dependency해 줄 필요가 없었지만 지금은 dependency 해줘야 작동하는듯하다.. valid 라이브러리 받는 곳 https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-validation 나는 2.4.4 버전을 사용한다. org.springframework.boot spring-boot-starter-validation 2.4.4 implementation group: 'org.springframework.boot', name: 'spring-boot-starter-validation', version: '2.4.4' javax.validation이 제공하는..
Oracle CONCAT, || (문자열 합치기) 문자열을 합쳐야 하는 경우 ||나 CONCAT을 사용하자 WITH DINNER_MENU AS ( SELECT '삼겹살' AS 삼겹살 , '항정살' AS 항정살 FROM dual ) SELECT 삼겹살, 항정살, 삼겹살 || 항정살 AS 합치기, CONCAT(삼겹살, 항정살) AS CONCAT합치기 FROM DINNER_MENU 만약 3개 이상의 문자열을 합칠 경우 ||가 더 편하다 WITH DINNER_MENU AS ( SELECT '삼겹살' AS 삼겹살 , '항정살' AS 항정살, '가브리살' AS 가브리살 FROM dual ) SELECT 삼겹살, 항정살, 가브리살, 삼겹살 || ' ' || 항정살 || ' ' || 가브리살 AS 합치기, CONCAT..
TO_CHAR 기록해두자 SELECT --날짜 포맷 TO_CHAR(SYSDATE,'YYYYMMDD'),-- 오늘날짜 반환 20210606 TO_CHAR(SYSDATE,'YYYY-MM-DD'),-- 2021-06-06 TO_CHAR(SYSDATE,'YYYY/MM/DD'),-- 2021/06/06 TO_CHAR(SYSDATE,'YYYY'),-- 2021 TO_CHAR(SYSDATE,'YY'),-- 21 TO_CHAR(SYSDATE,'MM'),-- 06 TO_CHAR(SYSDATE,'MON'),-- JUN TO_CHAR(SYSDATE,'D'),-- 1 (주중의 일을 1~7로 표시(일요일 = 1) TO_CHAR(SYSDATE,'DD'),-- 06 TO_CHAR(SYSDATE,'DDD'),-- 157 (오늘이 이..
WITH는 VIEW와 매우 비슷하지만 차이점이있다. WITH는 단일사용할 쿼리내에 정의되어 있는경우, 해당 쿼리문안에서만 실행된다. VIEW는 한번 생성하면 DROP할 때까지 계속 존재한다. WITH 기본구조 WITH DINNER_MENU AS ( SELECT '삼겹살' AS 오늘저녁메뉴 FROM dual ) SELECT * FROM DINNER_MENU; 다중 WITH문 -- WITH절 안에서 다른 WITH을 참조가능 WITH DINNER_MENU AS ( SELECT '삼겹살' AS 오늘메뉴 FROM dual UNION ALL SELECT '항정살' FROM DUAL ), LUNCH_MENU AS ( SELECT '가브리살' 오늘메뉴 FROM DUAL UNION ALL SELECT 오늘메뉴 FROM ..
Drop, Truncate, Delete 차이점 알아두면 좋다 SQLD 시험에도 나오는내용 1. Drop DROP TABLE 테이블명; DDL Rollback 불가 테이블 저장공간 반납 2. Truncate TRUNCATE TABLE 테이블명; DDL Rollback 불가 테이블을 최초 초기상태로 돌린다. 인덱스 등 모든데이터 삭제 모든 데이터가 삭제되기때문에 삭제된 행 수를 반환하지않음 3. Delete DELETE FROM 테이블명 (WHERE 조건); DML 삭제될 행이 많으면 삭제할 때마다 많은 시스템자원을 소모하기때문에 속도가 느리다 Commit이전 상태라면 Rollback 가능 전체 또는 일부 삭제 가능 삭제된 행 수 반환