본문 바로가기
반응형

Develop223

[DB] group function 에러 ORA-00934: 그룹 함수는 허가되지 않았습니다 ORA-00934: group function is not allowed here MySQL Error 1111: Invalid use of group function ❓ 원인 그룹 함수가 허용되지 않는 위치에서 그룹 함수 사용 그룹 함수란? 👉 컬럼 값들을 특정 기준에 따라 그룹화하고 그룹별로 결과를 반환하는 함수 ex: COUNT, SUM, MAX, MIN, AVG, .... 예제 WHERE, GROUP BY 등에서 그룹 함수 사용하면 에러 발생 SELECT i.* FROM items i, buy b WHERE i.quantity > COUNT(b.id); 💡 해결 그룹 함수를 사용 가능한 위치에서 사용하도록 쿼리 개선 (서브 쿼리 이용) SELEC.. 2022. 7. 3.
[1% 네트워크] chapter 1. 웹 브라우저가 메시지를 만든다. 이 글은 '성공과 실패를 결정하는 1%의 네트워크 원리'를 읽고 정리하는 글입니다. 웹 브라우저가 메시지를 웹 서버에 전송하기까지의 과정을 읽고 전체 글을 읽으면 좋을 것 같다. HTTP Request Message 작성 웹 서버의 IP 주소를 DNS 서버에서 조회 프로토콜 스택에 메시지 송신 의뢰 📕 1. HTTP Request Message 작성 📕 📑 1-1. 브라우저에서 URL 입력 브라우저 : 여러 클라이언트 기능을 겸한 복합적인 클라이언트 소프트웨어 ex: 웹 서버에 액세스하는 클라이언트, 파일 다운/업로드하는 FTP의 클라이언트, 메일의 클라이언트, ... 어떤 클라이언트를 사용하는지는 URL에서 알려줌 URL = Uniform Resource Locator http, ftp, mailto .. 2022. 7. 2.
No newline at end of file 에러 No newline at end of file 에러 자동 줄맞춤 기능만 믿고 커밋하다가 위 문구와 마주치게 되었다😅 클래스의 마지막 라인은 줄바꿈 해주는 것이 컨벤션이라고 알고 있기는 했는데 에러(?)가 발생하는 줄은 몰랐다. 컴파일 하는데는 아무 지장 없지만 너무 거슬려서 원인을 찾아보았다. 에러 원인 파일의 끝에 줄바꿈('\n', aka CR, CRLF, ...)이 없음 C, C++ 헤더 파일 등에서는 언어 표준 자체에서 요구 UNIX에서 시작된 관습 (예전 도구와의 호환성을 위해 유지) 줄 바꿈이 있는 파일과 줄 바꿈이 없는 파일의 차이를 구분할 수 없음 (아래 예제 참고) 예를 들어 아래와 같은 test.txt 파일이 있다고 가정하자 yeonlog 아래 명령어를 통해 test.txt를 두 번 보려.. 2022. 6. 26.
[Java] java.lang.ClassNotFoundException: javax.xml.bind.JAXBException 에러 java.lang.ClassNotFoundException: javax.xml.bind.JAXBException 에러 🤔 상황 Java 8에서 Java 11로 버전 업그레이드 😱 원인 Java 8 -> Java 9 버전업 시 해당 모듈이 제거됨 Java SE 9: JAXB API를 Java EE API로 간주해 기본 클래스 경로에 포함하지 않음 Java 11: JAXV API를 JDK에서 아예 제거 🔻 Java EE란? 더보기 Java EE: Java Enterprise Edtion = 엔터프라이즈 에디션 자바 플랫폼 Java SE: Java Standard Edition = 표준 에디션의 자바 플랫폼 더 자세한 설명 👉 IBM 링크 💡 해결 Maven javax.xml.bind jaxb-api 2.3... 2022. 6. 20.
[IntelliJ] 편하게 디버깅하기 😊 서론 원래는 System.out.println()을 찍어가며 디버깅을 했었다. 좋지 않은 습관임은 알았지만 다른 공부할게 너무 많아서 우선순위가 뒤로 밀려났다. 이전 미션에서 페어 프로그래밍을 진행하며 페어인 호호가 몇 가지 팁을 가르쳐줬는데 그렇게 편할수가 없었다. 나같은 디버깅 초보자들을 위해 IntelliJ의 디버깅 기능을 소개해보려고 한다.🤭 현재 작성자는 Windows 사용자 입니다. Mac의 단축키가 불일치하는 경우 댓글로 알려주시면 감사합니다 ~ 이 글은 IntelliJ 2021.2.3 버전을 기준으로 작성하였습니다. 🤗 유용한 단축키 👉 파일 검색 Windows: ctrl + shift + N Mac: ⌘ + ⇧ + O 👉 코드 검색 Windows: ctrl + shift + F Mac.. 2022. 6. 18.
[Spring] CORS 에러 해결하기 💥 문제의 시작 Access to fetch at 'http://서버IP:8080/signup' from origin 'API호출한IP' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled 프론트와의 협업 미션을 하는 중에 위와 같은 에러.. 2022. 6. 13.
WHERE절 IN과 NamedParameterJdbcTemplate IN 절을 쓰다 만난 BadSqlGrammarException Spring은 다양한 종류의 JdbcTemplate을 지원하는데 개인적으로는 NamedParameterJdbcTemplate를 애용하는 편이다. NamedParameterJdbcTemplate에서는 아래 예제처럼 WHERE ~ IN (~)을 편하게 사용할 수 있다. public List findByIds(List productIds) { final String query = "SELECT id, name, price, image_url FROM product WHERE id IN (:productIds)"; SqlParameterSource source = new MapSqlParameterSource("productIds", productI.. 2022. 6. 8.
OS 환경 변수로 중요한 설정 정보 숨기기 🤗 서론 중요한 설정 정보들이 담긴 파일은 공개되면 안된다. 이를 숨김 처리 하는 방법은 여러가지가 있다. Vault, AWS에서 지원해주는 Systems Manager Parameter Store 등 여러 서비스를 활용할 수 있다. 또는 properties를 아예 깃허브에 올리지 않고 서버에 직접 수동 배포하는 방법도 있다. 💻 OS에 환경 변수 저장하기 이번에 해볼 것은 OS 환경 변수에 저장하는 방법이다. (방법을 알려준 열음 완전 땡큐❤) 리눅스 환경이라면 아래 명령어를 통해 .bashrc 파일에 접근해 변수를 추가해주면 된다. $ vi ~/.bashrc 파일 하단에 변수를 추가해준다. 아래 예제처럼 export 키워드를 이용하면 된다. export SECRET_KEY='12e21.11fwq2' .. 2022. 6. 8.
[Spring 5 프로그래밍 입문] chapter 5, 6 - 컴포넌트 스캔과 빈 라이프 사이클 목차 chapter 5: 컴포넌트 스캔 컴포넌트 스캔 @ComponentScan 컴포넌트 스캔 충돌 처리 chapter 6: 빈 라이프 사이클과 범위 컨테이너의 라이프 사이클 스프링 빈 객체의 라이프 사이클 프로토타입 빈의 라이프 사이클 Chapter 5 - 컴포넌트 스캔 📰 컴포넌트 스캔 : 스프링이 직접 클래스를 검색해 빈으로 등록해주는 기능 @Component로 등록 가능 어노테이션에 값을 주면 빈으로 등록 시 사용할 이름 지정 가능 값이 없을 경우 클래스 이름의 첫 글자를 소문자로 바꾼 이름으로 지정 기본 스캔 대상 @Component @Controller @Service @Repository @Configuration 책에서는 @Aspect도 스캔 대상이라고 되어있는데 이는 오해를 부를 수 있는.. 2022. 6. 4.
반응형