2009-10-16 2 views
3

저는 Ruby (Ruby)에 매우 익숙합니다. RoR 에 몇 개의 작은 "데모 응용 프로그램"을 작성했지만 실제로 구문에 들어 가지 않았습니다.(J) 루비에서 XML을 파싱하고 데이터베이스에 삽입

XML로 작성된 Java로 작성된 응용 프로그램을 갖고 있는데, 은이를 파싱 한 다음 최대 절전 모드를 사용하여 MySQL 데이터베이스에 삽입합니다. 내가 JRuby로 이식 할 수 있는지 정말로보고 싶습니다. - 주로을 학습 연습으로 사용합니다. - 그러나 나는 어디에서 을 시작할 지 잘 모르겠습니다.

이 문서는 XML을 구문 분석에 대한 좋은 아이디어를 줄 것으로 보인다 :

http://developer.yahoo.com/ruby/ruby-xml.html

그러나 거기에서

, 나는 가장 좋은 방법은 DB 에서입니다 넣어 모르겠어요. ActiveRecord가 옵션이 될 수 있습니까? 그렇다면 "독립 실행 형"JRuby 앱에 어떻게 연결합니까? 아니면 어떻게 든 내 기존의 최대 절전 모드 물건을 통합 할 수있을 것 같아요?

어떤 조언이나 기꺼이받을 것 코드 샘플에 대한 링크 ...

감사 앤드류.

+1

정말 그 문서를 사용하지 않을 것입니다. [Hpricot] (http://wiki.github.com/hpricot/hpricot) 또는 [Nokogiri] (http://nokogiri.org) –

답변

4

ActiveRecord 급락을 앞두고 h2 embedded java 데이터베이스를 시작합니다.

나는 당신이 그럼 당신은 당신에 삽입하는 일부 테이블이 있어야합니다이

require 'active_record' 
require 'logger' 

my_logger = Logger.new(STDOUT) 
my_logger.level = Logger::DEBUG 
ActiveRecord::Base.logger = my_logger 

ActiveRecord::Base.establish_connection(
    :adapter => 'jdbch2', 
    :database => "my_database_file",  # set to anything you want first run 
    :username => "my_username",    # set to anything you want first run 
    :password => "my_secret_password"  # set to anything you want first run 
) 

같은 활동 기록을 사용할 수있는이 보석

jruby -S gem install active_record 
jruby -S gem install active_record_jdbc_adapter 
jruby -S gem install active_record_jdbch2_adapter 
jruby -S gem install jdbc_h2 

을 필요가 있다고 생각합니다. ActiveRecord 규칙을 유지하면서 순차 화 된 데이터베이스 스키마 변경 폴더를 유지 한 다음 마이그레이션 프로그램을 해당 폴더로 지정합니다. 예를 들어 "migrations"폴더와 "20090815230000_create_my_models.rb"라는 파일을 만듭니다. "snake_case"파일 이름이 CamelCase 클래스 이름과 일치하는지 확인하십시오.

이제 (메인 스크립트로 돌아 가기) 레일즈 마이그레이션 프로그램이이 폴더를 가리킬 수 있습니다. 레일 이주 프로그램은 마이그레이션을 순서대로 실행하기 위해 필요한 모든 메타 데이터를 저장하고 사용 가능 해지면 새로운 메타 데이터를 실행합니다. 당신이 당신의 테이블을 만든 후에

ActiveRecord::Migration.verbose = true 
ActiveRecord::Migrator.migrate("migrations") 

당신은 이제 데이터베이스에 물건을 삽입 할 수 있습니다 정상

class MyModel < ActiveRecord::Base 
end 

로 액티브을 사용할 수 있습니다.

x=MyModel.new 
x.foo="bar" 
x.save! 

이 정보가 도움이되기를 바랍니다. ActiveRecord가 작동하기에는 너무 많은 고통이 있다면 Sequel은 가볍고 재미 있습니다.

+0

멋진, mysql에 대한 동일한 작품, 그냥 보석 설치 jdbc - mysql을, 그리고 드라이버 섹션에 jdbcmysql – khelll

관련 문제