1
我需要在几个Ruby脚本中共享数据库句柄。我正在使用DBI gem连接到数据库。考虑下面的例子共享数据库句柄
#a.rb
class A
require 'dbi'
def connect
if a database handle is already open return it
else create a new one and return it
end
end
#b.rb
class B
require 'a'
a = A.new
dbh = a.connect
#some database queries here
end
#c.rb
class C
require 'a'
a = A.new
dbh = a.connect #Here the database handle created by class B should be returned
end
我明白,类实例变量是实现上述目标的方式。有人可以提供一些见解吗?
DBI是否有类似的东西log4r的
class A
require 'log4r'
Log4r::Logger.new('SO') #create a new instance here
end
class B
require 'a'
Log4r::Logger['SO'] # get the existing instance here
end
非常感谢。
谢谢你,你的代码工作得很好:-) – 2012-03-16 09:53:12