[MySQL] JSON Type 사용하기
ITWeb/개발일반 2016. 7. 21. 10:12elasticsearch에서 문서 데이터를 처리 하다 보니 json format을 많이 사용하게 됩니다.
그래서 색인을 위한 데이터중 일부는 mysql 에 json 형태로 저장할 필요가 있는데요. mysql 5.7 부터 data type 으로 json 을 지원하고 있습니다.
참고문서)
https://dev.mysql.com/doc/refman/5.7/en/json.html
https://dev.mysql.com/doc/refman/5.7/en/json-function-reference.html
선언)
CREATE TABLE XXXX (
seq BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
doc JSON NOT NULL,
PRIMARY KEY (seq)
) ENGINE = InnoDB
CHARACTER SET utf8
COLLATE utf8_general_ci;
등록)
INSERT INTO XXXX(doc) VALUE (?)
조회)
SELECT doc
FROM XXXX
JDBC)
# 등록
PrepareStatement.setObject(1, OBJECT);
# 조회
ResultSet.getObjecrt(1, "doc");
- JDBC 를 통해 DB 에 등록 할 때 value 값에 대한 Object를 Array 인지 Object 인지 확인해서 넣어 주어야 값이 원하는 형태로 저장 됩니다.
Elasticsearch Mapping)
"FIELD_NAME": { "type":"object", "enabled":false }