compileOnly: compile 시에만 빌드하고 빌드 결과물에는 포함하지 않음 runtime 시 필요없는 라이브러리인 경우 (runtime 환경에 이미 라이브러리가 제공되고 있는가 하는 등의 경우) 참고: https://blog.gradle.org/introducing-compile-only-dependencies runtimeOnly: runtime 시에만 필요한 라이브러리인 경우 annotationProcessor: annotation processor 명시 (gradle 4.6) 참고: https://docs.gradle.org/4.6/release-notes.html https://blog.gradle.org/incremental-compiler-avoidance#about-annotatio..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/QDzey/btqEq7G6518/sTlw4Yyv4vVA8kZJGD3G1K/img.png)
@Entity JPA가 관리할 객체 @ID DB PK와 매핑할 필드 persistence.xml JPA 설정 파일 /META-INF/persistence.xml 위치 javax.persistence로 시작: JPA 표준 속성 hibernate로 시작: 하이버네이트 전용 속성 데이터베이스 방언 JPA는 특정 데이터베이스에 종속적이지 않은 기술 각각의 데이터베이스가 제공하는 SQL문법과 함수는 조금씩 다름 가변 문자: MySQL은 VARCHAR, Oracle은 VARCHAR2 문자열을 자르는 함수: SQL 표준은 substring(), Oracle은 substr() 페이징: MySQL은 LIMIT, Oracle ROWNUM 방언: SQL 표준을 지키지 않거나 특정 데이터베이스만의 고유한 기능 주의 엔티티 매..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bb0xoh/btqEo8mFcDK/5nJsOJ4uTWHmqZJuWfizd1/img.png)
데이터베이스 스키마 자동 생성하기 DDL을 애플리케이션 실행 시점에 자동 생성 테이블 중심 -> 객체 중심 데이터베이스 방언을 활용해서 데이터베이스에 맞는 적절한 DDL 생성 이렇게 생성된 DDL은 개발 장비에서만 사용 생성된 DDL은 운영서버에서는 사용하지 않거나 적절히 다듬은 후 사용 ** 스키마란? 스키마는 데이터베이스의 구조와 제약조건에 관한 전반적인 명세를 기술한 메타데이터의 집합 스키마는 데이터베이스를 구성하는 데이터 개체(Entity), 속성(Attribute), 관계(Relationship) 및 데이터 조작 시 데이터 값들이 갖는 제약 조건등에 관해 전반적으로 정의한다. 스키마는 사용자의 관점에 따라 외부 스키마, 개념 스키마, 내부 스키마로 나뉘어진다. 데이터베이스 스키마 자동 생성하기 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/t553u/btqEnIts0qV/kDGB9sNmRWEpKGfRWPDAnK/img.png)
문제해석 1부터 n까지의 길이의 배열이 있고 배열에 있는 각각의 요소는 1과 n사이에 있는 수이다. 따로 변수나 배열을 사용하지 않고 O(n)만에 문제를 풀어야 한다. 배열을 순회하면서 하나씩 체크하면서 동시에 없는 수를 가려내야 한다. 헷갈린 부분 따로 메모리를 쓰지 않는다는 것이 어떤 의미인가 변수나 배열을 선언하지 않고 있는 배열내에서 해결하는 것을 의미한다. int index = nums[i] - 1 하고 그 index를 다시 nums[index]로 하는데 이렇게 하는 이유가 무엇인지 한참 고민했다. 돌이켜보면 아무래도 문제를 확실하게 이해했다면 금방 풀릴 고민일수도 있을 것 같다. nums 배열의 요소 모두 1보다 크고 n보다 작으니 missing number가 있다면 중복되는 숫자가 분명히 있..
클라이언트와 서버의 비동기 통신처리 스프링에서 비동기 처리를 할 때에 @RequestBody와 @ResponseBody 를 사용한다. 웹에서 이루어지는 데이터를 가져오고 전송하는 동작들은 클라이언트와 서버간의 통신이 이루어지기 때문에 가능하다. 검색의 경우 검색 버튼을 누른다. 검색 키워드가 클라이언트(Javascript)에서 서버(Java)로 전송된다. 서버에서 검색키워드를 이용해 클라이언트에서 요청한 메세지를 처리한다. 응답을 만들어 다시 클라이언트로 보낸다. 클라이언트는 서버로부터 온 데이터를 화면에 보여준다. 요청과 응답, 비동기통신 앞서 말한 검색의 예에서 볼 수 있듯이 클라이언트는 서버로 '요청'하며 서버는 클라이언트에게 메시지를 '응답'한다. 이러한 동작들은 대부분 비동기 통신을 통해 이루어..
- Total
- Today
- Yesterday
- 운영체제
- 배열
- 최단경로
- 퀵정렬
- 교착상태
- C
- 병행프로세스
- 자료구조
- 알고리즘
- Java
- 입출력장치
- dfs
- 클래스
- stackframe
- BFS
- Stack
- 동적프로그래밍
- 구조체
- 인접행렬
- javascript
- 세마포어
- 재귀함수
- 인접리스트
- react
- 스텍
- C++
- client side rendering
- 소프트웨어
- 이진탐색
- server side rendering
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |