꾸준히 재밌게
728x90
728x90
article thumbnail
JPQL이란? - QueryDSL 사용하기(2)
공부방 2023. 8. 1. 19:28

서론 이전 글에 나왔던 키워드 중 JPQL에 대해 조금이라도 알아보기 위해 정리하는 글 JPQL(Java Persitence Query Language)이란? 엔티티 객체를 대상으로 하는 객체지향 쿼리로 SQL을 추상화한 객체지향 쿼리이며, 작성된 JPQL은 SQL로 변환된다. 기존 JPA의 메서드 호출만으로는 섬세한 쿼리 작성이 어렵다는 문제를 해결하기 위해 JPQL이 나타나게 되었으며 SQL을 추상화했기 때문에 특정 데이터베이스 SQL에 의존하지 않는다는 장점이 있다. SELECT, FROM, WHERE, GROUP BY, HAVING, JOIN을 지원한다. 예시 Member 객체를 대상으로 이름에 "bazzi"가 포함된 모든 회원을 검색하는 쿼리 String jpql = "select m From ..

article thumbnail
Jsoup(1) - Jsoup이란? / 초간단 예시
Java 2023. 5. 11. 09:48

jsoup: Java HTML parser, built for HTML editing, cleaning, scraping, and XSS safety jsoup: Java HTML Parser jsoup is a Java library for working with real-world HTML. It provides a very convenient API for fetching URLs and extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors. jsoup implements the WHATWG H jsoup.org Jsoup은 실제 HTML 작업을 위한 Java 라이브러리이다. HTML5 DOM 메..

article thumbnail
[Java] 덧칠하기 - Lv2 프로그래머스

https://school.programmers.co.kr/learn/courses/30/lessons/161989 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 n은 전체길이, m은 한번 칠 할 수 있는 최대 길이, section은 칠해야 하는 곳이다. 한번 페인트를 칠하려고 벽에 갖다 대면 최대 길이만큼 무조건 칠해야한다. m=4이면 반드시 연속된 4미터를 칠해야한다. m이 4일 때, 시작지점이 2라면, 2,3,4,5 네 칸을 칠할 수 있다. m > 현재위치 - 시작위치 까지 한번에 칠할 수 있다. 풀이 배열을 단순히 배열의 처음부터 탐색하..

article thumbnail
[알고리즘] 깊이 우선 탐색(DFS)
CS/알고리즘 2023. 1. 29. 18:06

깊이 우선 탐색 ( Depth-First Search ) 루트 노드에서 시작해 다음 분기(branch)로 넘어가기 전에 해당 분기를 완벽하게 탐색하는 방법 특징 1. 모든 노드를 방문하고자 하는 경우에 사용한다. 2. 단순 검색 속도는 너비 우선 탐색(BFS)에 비해 느리다. 3. 검색이 아닌 순회를 할 경우 많이 사용한다. 공통 상위를 가지는 아래 리프 노드들을 한방에 잘라내는게 가능하기 때문에 백트래킹에 사용된다. 미로를 탐색할 때 한 방향으로 갈 수 있을 때까지 계속 가다가 더 이상 갈 수 없게 되면 다시 가장 가까운 갈림길로 돌아와서 다른 방향으로 다시 탐색을 진행하는 방법과 유사하다. 장점 1. 현 경로상의 노드들만 기억하면 되기 때문에 저장 공간의 수요가 비교적 적다. 2. 목표 노드가 깊은 ..

article thumbnail
[알고리즘] 너비 우선 탐색(BFS) - Java
CS/알고리즘 2023. 1. 27. 10:04

너비 우선 탐색 ( Breadth-first search ) 트리나 그래프를 방문 또는 탐색하는 방법으로 루트 노드에서 시작해서 인접 노드를 먼저 탐색하는 방법. 탐색 방법 1. 루트노드에서 시작한다. 2. 자식노드들을 저장한다. 3. 저장되어있는 노드를 방문하며 저장되어있는 노드들의 자식들을 저장하며 4. 위의 과정을 모든 노드를 방문할 때 까지 반복하며 완료 시 탐색을 종료한다. 특징 1. 어떤 노드를 방문했는지 반드시 검사 해야 한다. 2. Queue를 사용하는 경우가 일반적이며 재귀적으로 동작하지 않는다. 3. Prim, Dijkstra알고리즘과 유사하다. 장점 1. 노드의 수가 적고 깊이가 얕은 경우 빠르게 동작할 수 있다. 2. 단순 검색 속도가 깊이 우선 탐색(DFS)보다 빠르다. 3. 너비..

article thumbnail
[Java] 개인정보 수집 유효기간 - 2023 카카오 블라인드 Lv1 프로그래머스

문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 String형식의 날짜(2022.05.05)를 형변환 한 뒤, Day로 치환하여 풀었다. 모든 달의 날짜가 28일까지라는 것이 조건이었기 때문에, 월별로 날짜의 수가 다른 것을 고려할 필요가 없었다. Int로 형변환 하는 메서드 substring을 활용하여 년, 월, 일을 뽑아내어 int형태의 날짜로 변환하였다. 문제 조건에서 년도는 2000~2022년도 까지라고 했기때문에 뒤의..

article thumbnail
베스트앨범 - 프로그래머스 해시 Lv3 Java

문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42579 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 1. getOrDefault Map의 getOrDefault 를 사용하여 문제의 최우선 조건인 속한 노래가 많이 재생된 장르가 우선시되는 것을 만족시켰다. getOrDefault(Object key, V DefaultValue) 찾는 key가 존재하면 해당 key에 매핑되어있는 값을 반환하고, 그렇지 않으면 디폴트 값이 반환된다. map.getOrDefault(genres[i], ..

article thumbnail
[자료구조] 트리(Tree) 구조
CS/자료구조 2023. 1. 17. 19:32

트리구조란? 한 노드에서 시작해서 다른 정점들을 순회하여 자기 자신에게 돌아오는 순환이 없는 연결그래프이다. 회사의 조직도 내 컴퓨터\C:\Program Files\..... 트리 용어 용어 설명 루트(root) 노드 맨 위에 위치한 노드이며, 부모노드 라고 함 리프(leaf) 노드 자식이 없는 최하단 노드, 단말(terminal) 노드 라고도 함 내부(internal) 노드 리프노드가 아닌 노드, 가지(branch) 노드 라고도 함 간선/엣지/링크/브랜치 노드들끼리의 연결선 노드의 차수 한 노드가 가진 서브트리의 차수 트리의 차수 트리노드들의 차수 중 최대차수 서브트리(sub-tree) 트리에서 어떤 한 노드와 그 노드의 자손들로 이루어진 트리 레벨(level) 0이나 1부터 시작하며 높이를 정의함 높..

728x90
728x90