mysql-在(J)Ruby中解析XML并插入数据库
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了mysql-在(J)Ruby中解析XML并插入数据库,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2102字,纯文字阅读大概需要4分钟。
内容图文
我对(J)Ruby还是很陌生-在RoR中编写了一些小小的“演示应用程序”
但实际上并没有真正了解语法.
我目前有一个用Java编写的应用程序,该应用程序需要一个XML文件,
进行解析,然后使用Hibernate将其插入MySQL数据库.
我真正想做的是看看是否可以将此移植到JRuby,-
主要是作为学习练习-但我不确定在哪里
开始.
该文档似乎对解析XML提供了一个好主意:
http://developer.yahoo.com/ruby/ruby-xml.html
但是从那里,我不确定将其放入数据库的最佳方法
是.是否可以选择ActiveRecord,如果可以的话,如何将其挂接到
一个“独立的” JRuby应用程序?或者我想我可以以某种方式整合我的
现有的Hibernate东西吧?
任何建议或示例代码的链接将不胜感激…
问候,
安德鲁.
解决方法:
继续学习ActiveRecord,这是h2嵌入式Java数据库的一些入门.
我想你需要这些宝石
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
然后您可以像这样使用活动记录
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
)
您将需要插入一些表.为了保持ActiveRecord约定,请保留一个已排序数据库模式更改的文件夹,然后将迁移器指向该文件夹.例如,创建一个“ migrations”文件夹,以及以下名为“ 20090815230000_create_my_models.rb”的文件.确保“ snake_case”文件名与CamelCase类名匹配.
class CreateMyModels < ActiveRecord::Migration
def self.up
create_table :my_models do |t|
t.string :foo
end
end
def self.down
drop_table :my_models
end
end
现在(返回您的主脚本),您可以将Rails迁移器指向该文件夹. Rails迁移器存储所有必要的元数据,以便按顺序运行迁移,并在新迁移可用时运行它们.
ActiveRecord::Migration.verbose = true
ActiveRecord::Migrator.migrate("migrations")
创建表后,您可以正常使用ActiveRecord
class MyModel < ActiveRecord::Base
end
现在您可以将内容插入数据库.
x=MyModel.new
x.foo="bar"
x.save!
我希望这有帮助.如果ActiveRecord上班不方便,那么Sequel既轻松又有趣.
内容总结
以上是互联网集市为您收集整理的mysql-在(J)Ruby中解析XML并插入数据库全部内容,希望文章能够帮你解决mysql-在(J)Ruby中解析XML并插入数据库所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。