반응형

분류 전체보기 294

1. 대소문자 구별없이 LIKE문 사용하고 싶을때 ILIKE

SQL에서 어떤 텍스트를 찾아낼 때 흔히 사용하는건 like와 ilike가 있다. some_text like 'pattern' some_text ilike 'pattern' Syntax는 위와 같습니다. some_text 속에 pattern과 일치하는 부분이 있다면 True를 반환하고, pattern과 일치하는 부분이 없다면 False를 반환합니다. some_text는 column 이름으로 대체 가능합니다. like와 ilike는 동일한 기능을 가지지만 차이점은 다음과 같습니다. like = 대소문자 구분(case sensitive) (e.g. a와 A는 다르다고 판단) ilike = 대소문자 구분 안함(case insensitive) (e.g. a와 A는 동일하다고 판단) 'apple' like 'ap..

DB/PostgreSQL 2022.10.24

1. 오늘 기준으로 60일치 메뉴별 방문자수 집계 API

SQL select name, count(name) As cnt, gaipday from member where gaipday BETWEEN DATE_ADD(NOW(),INTERVAL -60 DAY) AND NOW() group by name; DTO package data.dto; import java.sql.Timestamp; import org.apache.ibatis.type.Alias; import org.springframework.format.annotation.DateTimeFormat; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import lombok.Getter; import lombok.Setter..

메뉴 별 이번달 방문자 수 가져오는 쿼리 | 방법 4가지 (4번이 제일 좋음)

1. 첫번째 방법 select name, count(name) from member where gaipday between date_format(now(), '%Y-%m-01') and date_format(now(), '%Y-%m-%d') and name='메뉴1' group by name; select 메뉴컬럼명, count(메뉴컬럼명) from 테이블명 where 날짜컬럼명 between date_format(now(), '%Y-%m-01') and date_format(now(), '%Y-%m-%d') and 메뉴컬럼명='메뉴1' group by 메뉴컬럼명; 1. 두번째 방법 SELECT name, count(name) FROM member WHERE MONTH(gaipday) = MONTH(CU..

DB/mySQL 2022.08.21

IntelliJ 유용한 단축키 정리

기본 단축키 디렉터리, 패키지, 클래스 등 생성 목록 보기 MacOS: Cmd + n Win/Linux: Alt + Insert 코드 Edit Main method 생성 및 실행 메인 메서드 선언 live template 이용: psvm (live template은 아래 참고) 메인 메서드 실행 좌측 실행 버튼 단축키 현재 Focus 가 해당 메서드에 있어야 함 MacOS: Ctrl + Shift + r Win/Linux: Ctrl + Shift + F10 - 이전 실행문 재실행 (우측 상단에 실행문 목록 확인 가능) MacOS: Ctrl + r Win/Linux: Shift + F10 라인 수정하기 라인 복제하기 MacOS: Cmd + d Win/Linux: Ctrl + d 라인 삭제하기 MacOS: ..

IDE/IntelliJ 2022.08.17

3. View 환경설정 | Welcome Page | Controller로 Thymeleaf 템플릿 엔진 동작 확인

1. 스프링 부트가 제공하는 Welcome Page 기능 - resource/static 폴더에 index.html 을 올려두면 Welcome Page가 된다 hello hello 2. Thymeleaf 템플릿 엔진 - 템플릿 엔진을 쓰면 위 사진의 정적 페이지를 동적으로 만들수 있다. - Thymeleaf 공식 사이트 : https://www.thymeleaf.org/ - 스프링 공식 튜토리얼 : https://spring.io/guides/gs/serving-web-content/ - 스프링부트 메뉴얼 : https://docs.spring.io/spring-boot/docs/2.3.1.RELEASE/reference/html/spring-boot-features.html#boot-features-s..

2. Gradle은 의존관계가 있는 라이브러리를 함께 다운로드한다 | 스프링 부트 라이브러리 | 테스트 라이브러리

Gradle은 의존관계가 있는 라이브러리를 함께 다운로드한다 라이브러리 하나를 다운해도 라이브러리끼리 의존관계가 있다면 2~3개 같이 다운로드 된다 옛날 개발자들은 WAS를 직접 server에 설치해놓고 Java 코드를 밀어넣는 식으로 웹 서버랑 개발 라이브러리랑 완전 분리되어 있었다 현재는 소스 라이브러리에서 웹서버를 들고있다 (embedded system 이라 부른다 (내장형) ) Java main 메서드 실행만해도 웹서버가 뜬다. 따로 설정이 필요없다. 현재 개발은 이런식으로 진행된다. 라이브러리 하나 빌드해서 웹서버에 올리면 끝! 옛날처럼 tomcat Server 설치를 따로 할 필요가 없다. 스프링 부트 라이브러리 Spring-boot-starter-web (핵심 라이브러리) - spring-b..

1. start.io 사이트 spring 프로젝트 생성, 설정 | Spirng 폴더 구조 | IDE 설정, 연결, 실행 방법

프로젝트 생성 사전 준비 - Java 11 설치 - IDE : InteliJ 1. 스프링 부트 스타터 사이트로 이동해서 스프링 프로젝트 생성 - 스타터 사이트는 스프링에서 운영하고 있는 스프링 부트 기반으로 스프링 관련 프로젝트를 만들어주는 사이트다 스타터 사이트 Project 선택시 참고 (필요한 라이브러리를 땡겨서 빌드까지 관리해주는 툴) - Maven Project → 과거에 많이사용 - Gradie Project → 요즘 추세 스타터 사이트 spring Boot 버전 선택시 참고 - SNAPSHOP 은 아직 만들고 있는 버전 - M1은 아직 정식 릴리즈된 버전이 아니다 스타터 사이트 Dependencies (★중요 : 어떤 라이브러리를 쓸건지 설정) - Spring Web - Thymleaf (H..

Exception 예외(런타임에러)의 상속 계층도/종류

에외 -> 런타임에러 (실행중에 발생하는 에러) 의 종류 IOException ClassNotFoundException -> 클래스를 찾지 못할때 발생하는 에러 RuntimeException -> 프로그래머 실수로 발생하는 에러 └ ArithmeticException -> 예외적인 산술조건이 발생하면 발생 (어떤 수를 0으로 나누거나할때) └ ClassCastException -> 형변환 에러 └ NullPointerException -> 참조변수가 null인데 거기다가 메서드 호출하거나 하면 나는 에러 └ IndexOutOfBoundsException -> 배열 범위 벗어나는것 이런게 다 실행시 발생하는 에러, 실행시 발생하는것 보다 컴파일타임 에러가 낫다. 이런걸 컴파일에러 로 바꾸면 실행 전 수정할..

Error 오답노트 2022.06.06
반응형