2010-04-23 6 views
2

우리의 주 도메인 객체는 여러 문자열 [] 속성 (다양한 구성 옵션)을 가지고 있으며 우리는 데이터를 유지하기위한 우아한 방법을 생각하고 있습니다. GORM은 각 배열에 대해 조인 된 테이블을 생성하므로 약 12 ​​개의 조인 된 테이블로 끝납니다.단일 열의 지속 문자열 배열

주 테이블 (어딘가로 구분)의 단일 열로 각 배열을 serialize하고 array onload로 다시 구문 분석 할 수 있는지 궁금합니다.

제안 방법이 있습니까? 내가 최대 절전 모드 usertype 또는 grails 속성 편집기를 생각 중이 야? 나는 usertypes로 시간을 보냈지 만 운이 없었다.

감사 PK

+0

흥미 로움, GORM이 만드는 수십 개의 테이블에 문제가 있습니까? – Armand

답변

1

당신이 JSON으로 DB 필드에 다음지도/배열로 매개 변수를 넣어 저장할 수 : 쉽게지도에 다시이 문자열을 변환 할 수 있습니다

다음
def someDomainInstance = new SomeDomain() 
def paramMap = [name:'John', age:24] 
someDomainInstance.paramJson = paramMap as JSON 
someDomainInstance.save() 

/배열 당신이 DB를 심문하면 :

def paramMapFromDB = JSON.parse(someDomainInstance.paramJson) 
assertEquals 24, paramMapFromDB.age 

그런 식으로, 나는 구문을 테스트하지 않은,하지만 그건 일반적인 생각입니다.