개발공부(173)
-
[ORM 표준 JPA] 10장 객체지향 쿼리언어(JPQL) (1)
ORM방식으로 복잡한 쿼리를 만들 수 있게 도와주는 기능입니다. JPA는 JPQL을 분석해 적절한 SQL을 만들어 DB를 조회합니다. 종류 Native SQL : JPQL 대신 SQL을 사용할 수 있음 QueryDSL : SQL 작성을 도와주는 빌더 클래스 모음 빌더클래스 쿼리를 코드로 작성할 수 있기 때문에 컴파일 시점에 오류가 발생합니다. 쿼리 전용 엔티티(메타모델)를 만들어주는 어노테이션 프로세서가 필요합니다. QueryDSL //준비 JPAQuery query = new JPAQuery(em); QMember member = QMember.member; //쿼리, 결과조회 List members = query.from(member) .where(member.username.eq("kim")) .l..
2021.07.25 -
[생활코딩] 관계형 데이터 모델링 - 2. 데이터 모델링의 순서
업무파악 → 개념적 데이터 모델링 → 논리적 데이터 모델링 → 물리적 데이터 모델링 1. 업무파악 : 우리가 하려는 일을 기획자와 논의해 파악하고 기획서를 전달받습니다. 2. 개념적 데이터 모델링 : 하려는 일의 개념들이 어떤 관계에 있는지 숙고해 ERD로 나타냅니다. 3. 논리적 데이터 모델링 : RDB에 맞게 구성합니다. 일의 개념들을 관계형 데이터 베이스 표로써 나타냅니다. 4. 물리적 데이터 모델링 : DB제품을 선택해 SQL 코드로 실제 RDB를 구현합니다. 데이터 모델링은 현실의 문제를 뜯어내 DB로 옮겨 해결하는 과정입니다. 계속해서 문제가 잘 해결되었는지 검증하기 위해 DB에 잘 담겨있는지 끊임없는 확인이 필요합니다. 출처 : 생활코딩
2021.07.05 -
[생활코딩] 관계형 데이터 모델링 - 1. 수업소개
RDB(관계형 데이터베이스) 테이블끼리 연관관계가 잘 구성된 DB 정규화(Normalization) DB 설계에서 중복을 최소화하게 데이터를 구조화 프로세스. 목적은 크고 조직화 되지 않은 테이블을 작고 잘 조직된 테이블과 관계들로 나누는 것을 말합니다. Model(모델) 목적을 가지고 진짜를 모방하는 것 - 목적 : 표에 데이터를 담는 것 - 진짜 : 현실의 복잡성 - 모방 : 컴퓨터에 저장하는 데이터 베이스 Data Modeling(데이터 모델링) 현실의 복잡성을 DB 데이터화 하는 구조화 출처 : 생활코딩
2021.07.04 -
logger spring xml
콘솔에 출력하는 것 뿐만 아니라 파일로 만드는데에 필요한 설정입니다. rolling policy는 지나친 로그 파일들을 생성하는 것을 방지하기 위한 장치입니다. rolling log : 하루에 주기적으로 로그 파일들을 닫고(정리하고) 새로운 로그 파일들을 여는 과정을 얼컫습니다. consoleAppender : 콘솔에 출력되는 로그 fileAppender : 파일로 저장되는 로그 참고자료 : https://www.baeldung.com/spring-boot-logging 참고자료 : https://thinkwarelab.wordpress.com/2016/11/18/java에서-logback을-이용한-로깅logging-사용법/
2021.07.01 -
git reset
main 리모트 브랜치가 yuhyeon 브랜치 시점으로 변경되어야 할 때 checkout main 브랜치로 한다음 yuhyeon 브랜치로 reset commit을 하여 force push하면 같은 커밋상태가 됩니다. reset main to this commit에서 hard를 택하면 local이 main으로 변경된 상태에서 커밋이 가장 앞선 곳으로 변경됩니다. 이후 푸시를 할 것이냐는 창이 떴을 때 force push하여 remote main을 local main의 상태와 동등한 시점을 만들어주면 됩니다. Git Doc git reset 사용법에는 총 3가지 형식이 있습니다. 로부터 엔트리를 복사해 인덱스에 반영하는 것이 있고, 마지막 방식은 현재 브랜치 HEAD를 으로 옮기고 인덱스와 워킹 트리를 일치..
2021.07.01 -
(3) JSONArray & JSONObject
JSON은 언어간의 변환이 자유로운 자료구조 입니다. 이러한 장점 덕분에 서버 - 클라이언트 HTTP 전송 시 JSON 형식으로 돼있는 경우가 많습니다. Java 기준으로 라이브러리 종류도 크게 3가지가 있는데 참고로 알아두면 좋을 것 같습니다. JSON (참고링크) 용량이 큰 파일들을 처리해야 할 때가 있을 수 있는데, 이는 하둡이나 스파크 클러스터(분산 저장소로 빅데이터를 처리하는 프로그래밍 모델)로 어플리케이션을 처리할 때 사용합니다. 벤치마킹 : 대용량 파일의 경우 Jackson과 simple이 우세하지만 다수의 작은 용량을 처리할 경우 GSON과 simple이 우세하단 것을 알 수 있습니다. JSON String을 Java에서 파싱할 때 JSONObject, JSONArray 중 선택해 사용할 ..
2021.06.23