Grails 프레임 워크에서 작업하고 있습니다. 내가 도메인 클래스 메소드를 Grails의 방법 동적Grails는 도메인 클래스에 대해 자동으로/동적으로 메소드를 생성하는 방법을 가르 칩니까?
수, countBy, createCriteria, 삭제, 폐기, 오류, 하는 executeQuery 같은 Grails 애플리케이션의 각 도메인 클래스에 대해 생성하는 것이 궁금, executeUpdate의는 존재 , 의 fetchMode, 발견, findall은, findAllBy, findAllWhere, findBy, findOrCreateBy, findOrCreateWhere,,findOrSaveBy, findOrSaveWhere, findWhere, 를 getAll, 얻을, 첫째, getDirtyPropertyNames, getPersistentValue, hasErrors, hasMany의, hasOne의, 답하라, instanceof를, isAttached, IsDirty 사용, 마지막으로, 목록 , listOrderBy, 로드, 잠금, 병합, 읽기, 새로 고침, 는을 저장검증 , withCriteria, withNewSession, withSession, withTransaction는이 metaprogramming를 통해 이루어집니다
"Grails 3.x에서는 메타 클래스가 도메인 클래스를 확장하는 데 사용되지 않습니다." - 그건 사실이 아닙니다. 우리는 여전히 컴파일 타임에 조작 할 수없는 동적 파인더 (dynamic finder)와 같은 것들에 대해 런타임 메타 프로그래밍을 사용합니다. 런타임 메타 프로그래밍으로 수행 되곤했던 많은 다른 것들이 특성 기반 솔루션이나 커스텀 AST 변환으로 대체되었지만, 런타임 메타 프로그래밍은 여전히 Grails 3에서 사용됩니다. –