정의:  코드 생성을 위한 코드 프로그래밍

  • 소스 코드 생성
  • 바이트 코드 생성
  • pretending 혹은 synthesizing method
import org.jfugue.Player
import org.jfugue.Pattern

def player = new Player()
def pattern = null

pattern = player.loadMidi( new File("d:/work/midi/canon.mid"))

def list = pattern.toString().split()

(0..3).each {
    println list[it]

'Groovy, Grails' 카테고리의 다른 글

Cloud Foundry Community  (0) 2011.05.12
[Groovy] MD5 생성하기  (0) 2010.06.04
[Grails] HQL dynamic finder 사용법  (0) 2010.06.03
[Grails] 시작 포트 변경 방법  (0) 2010.06.03
[Groovy] URL encode/decode  (0) 2010.05.26
[MIDI] JFugue로 미디 플레이하기  (0) 2010.05.18
[MusicXML] 파일 읽어서 연주하기  (0) 2010.05.18


import java.security.MessageDigest

String getMD5( String msg) {
    def md5 = MessageDigest.getInstance("MD5")
   
    md5.update(msg.getBytes())
    byte[] md5sum = md5.digest()
   
    def ret = ""
   
    md5sum.each {
        ret += Integer.toHexString(it).toUpperCase()
    }
   
    return ret
}

println getMD5("gilbird")

  • Grails에서 생성한 GORM에 대한 쿼리는 dynamic finder로 원하는 데이터를 얻을 수 있다.
  • 아래 메소드들은 콘솔을 띄워서 연습하면 효과적이다.
    • grails console
  • 관련 메소드
    • find()
    • findAll()
    • findAll( query, param)
      • ex) User.findAll( “FROM User u WHERE u.id=:user_id”, [user_id:‘gilbird’])
    • findBy*()
    • findAllBy*()
      • LessThan, LessThanEqual
      • GreaterThan, GreaterThanEqual
      • Like, Ilike
      • NotEqual
      • Between
      • IsNotNull, IsNull
      • And, Or
    • list( option_list)
      • max, sort, order, ignoreCase, fetch, offset
    • listOrderBy*()
    • countBy*()
    • 복잡한 쿼리는 도메인 클래스의 withCriteria 클로저로 작성하면 된다.
      (참고: http://www.grails.org/doc/latest/guide/single.html#5.4.2 Criteria)

grails 프로젝트를 시작하면 포트번호가 디폴트로 8080이 된다.
값을 변경하는 방법으로 세가지가 있다.

  • 시작할 때 포트번호를 옵션으로 넘긴다.
    • grails –Dserver.port=9090 run-app
  • 프로젝트 혹은 시스템 설정을 변경한다.
    • /grails-app/conf/BuildConfig.groovy에 코드 추가
    • $HOME/.grails/settings.groovy에 코드 추가
      • grails.server.port.http=9090
Cygwin 콘솔을 실행했는데 .bashrc 내용이 로딩되지 않은 경우 다음과 같은 조취를 취한다.

  • /etc/profile을 연다.
  • 제일 마지막 라인에 다음과 같이 넣고 저장한다.
    . ${HOME}/.bashrc
참고

+ Recent posts