본문 바로가기

전체 글

(17)
SQLD 합격 후기 및 추천 준비 방법 지금 컴공과를 재학중이긴 합니다만, db 과목을 아직 들어본적은 없고 독학으로 공부한거라 사실상 비전공자분들하고 큰 차이는 없다고 생각됩니다. 저는 흔히 노랭이라고 부르는 문제집과 sql 전문가 가이드 pdf본 위주로 공부했고, 유튜버 홍쌤이라는 분의 영상을 참고했습니다. 제가 추천드리는 sqld 공부 방법은 다음과 같습니다.  1. sqld 시험 범위 확인  sqld 각 과목별로 어떤 주제가 요구 되는지 전체적인 흐름을 파악하셔야 됩니다.  2. 개념 공부 https://dataonair.or.kr/db-tech-reference/d-guide/sql/ 위 사이트에 가시면, 'SQL 전문가 가이드' 라는 책의 PDF본을 보실 수 있습니다. 해당 사이트에 sqld 각 과목 주제 내용을 다루는 포스팅이 게..
백준 31247번 - 2024는 무엇이 특별할까? (JAVA) https://www.acmicpc.net/problem/31247 어떤 수 x의 짝수 약수의 개수를 a라고하고, 홀수 약수의 개수를 b라고 할 때, a = K * b를 만족하는 x를 K-특별한 수라고 한다. K 가 0일 경우, 모든 홀수가 K- 특별 수가 된다. K = 1일 경우, 짝수 개수와 홀수 개수가 같은, 즉 홀수 약수로만 구성된 수(홀수)에 모두 2를 곱하면 된다. K = 2일 경우, 홀수 약수 개수의 2배가 짝수 약수 개수여야한다, 홀수 약수로만 구성된 수에 2를 곱하고, 또 그 곱한 값에 2를 곱한다. 이때, 어떤 수 x는 가장 큰 약수와 같다. 따라서, 어떤 홀수 x에 2^K을 곱한 값은 K - 특별 수가 됨을 알 수 있다.Y 이하의 2^K의 홀수 배수의 개수를 구하기 위해서는, 먼저 홀..
sql - null과 not in https://docs.oracle.com/en/database/oracle/oracle-database/23/sqlrf/IN-Condition.html#GUID-C7961CB3-8F60-47E0-96EB-BDCF5DB1317C SQL Language Reference docs.oracle.com  프로그래머스 sql 문제를 풀다가, not in의 대상의 집합 중 일부가 null 일 경우 생각했던 것과 다르게 동작하여 왜 그런지 찾아보았다. 결론은, 내가 완전히 잘못 생각하고 있었다. a not in(가, 나, NULL) 일 경우 a != 가 / a != 나 / a != NULL 을 만족해야 NOT IN이 TRUE를 반환한다. 따라서, a != NULL 의 결과가 unknown 이므로, a not in(..
아파치 톰캣 흐름 Gradle init을 통해, 기본 소스를 생성한 뒤,  https://mvnrepository.com/artifact/org.apache.tomcat.embed/tomcat-embed-core 메이븐 리포지토리에서 내장 톰캣 라이브러리를 끌어온 다음, 매우 간단한 예제를 작성하고, 흐름을 따라가고자한다. /* * This source file was generated by the Gradle 'init' task */package org.example;import org.apache.catalina.Context;import org.apache.catalina.LifecycleException;import org.apache.catalina.startup.Tomcat;public class App { ..
아파치 톰캣 아파치 톰캣을 사용하고 소스 코드를 따라가보기 전에, 아파치 톰캣에 관하여 이론적인 내용을 정리하고자한다.1. 개요 - 서블릿 들어온 요청에 따라 매핑 가능한, 그냥 평범한 자바 코드 또는 별도의 어떤 주체. 요청에 맞는 적절한 응답을 제공함. 보통 HTML 형식의 파일을 동적으로 생성하는데 채용되는 형태. 물론 다른 목적으로 사용되어도 문제 없음. - JSP 서블릿 내부에서 HTML 맨날 적는거 귀찮아서 만든, 서버 사이드 렌더링 언어로 구성된 파일.  HTML 껍데기에 자바 코드가 섞여있는 것으로 볼 수 있음. JSP도 서블릿으로 변환됨.  - java servlet api란? 위에서 설명한 서블릿이라는 개념을 실현시키기 위한 표준 명세서. 쉽게 말해, * 웹 서버에서 서블릿으로 리퀘스트 전달 -> ..
JAVA - 이너 클래스의 외부 클래스 참조 어떤 클래스의 이너 클래스를 non-static으로 선언하였을 때, 이너 클래스의 생성자를 컴파일러는 어떻게 처리할까? 가장 확실한건 컴파일된 클래스 파일을 까보는 것이겠지만, 리플렉션 기능을 활용하면 더 편하게 알 수 있을 것이다. 먼저, 이너 클래스의 생성자를 명시적으로 선언하고 파라미터도 몇개 넣어주자.public class Main { public static void main(String args[]) { Class testClass = Test.class; Constructor[] declaredMethods = testClass.getDeclaredConstructors(); for (Constructor declaredMethod : declare..
JAVA 리플렉션 - Members - Fields https://docs.oracle.com/javase/tutorial/reflect/member/index.html The Reflection API)" data-og-description="The Java Tutorials have been written for JDK 8. Examples and practices described in this page don't take advantage of improvements introduced in later releases and might use technology no longer available. See Java Language Changes for a summary of updated" data-og-host="docs.oracle.com" ..
채팅 서버 프로젝트 정리 https://github.com/bcy1235/ChatServer-Practice GitHub - bcy1235/ChatServer-Practice: 간단한 채팅 서버를 만든 후, 성능을 측정하고, 개선해보는 프로젝 간단한 채팅 서버를 만든 후, 성능을 측정하고, 개선해보는 프로젝트입니다. Contribute to bcy1235/ChatServer-Practice development by creating an account on GitHub. github.com 간단한 채팅 서버를 만들어보았고, 여기에 쓰인 여러 라이브러리들에 대하여 정리하고자 한다. 순서는 다음과 같다. 자료구조 ConcurrentLinkedQueue/Deque HashMap CopyOnWriteArrayList fast-fail ..