我是一个程序员,在一家CRM软件公司做开发,工作使用PHP语言开发,使用Ruby作为脚本语言,进行一些自动化处理。
最近在做一个项目,需要和金蝶的K3进行集成,采用了十分原始的互相写入对方数据库的方式,于是对方K3的开发者向我们索要产品等模块的数据字典,由于我们CRM是基于vtiger CRM改造而来,有如下特点:
1.它支持自定义字段,同一个模块数据存在不同的表中。
2.所有结构信息保存在fields表中。
于是我就想通过读取fields表来自动生成结构信息,然后再加点注释,一个数据字典不就完成了吗,说干就干,首先要解决数据库连接,基于一些原因,我没有使用ruby的DBI,而是使用了jruby调用jdbc,而activerecord-jdbc太重量级了,于是上网搜索,发现了一个简单的jdbc封装jdbc-wrapper。
可通过gems来安装这个库:jruby -S gems jdbc-wrapper
说到简单,他实在简单,仅支持JDBC中最常用的20%功能(如:Connection、Statement、PreparedStatement等)不支持存储过程等 高级选项,否则就要hack一下了,这个不是个大问题。
它使用类似activerecord-jdbc一样的adapter建立数据库连接,而不是jdbc的url地址。内置了许多开源的数据库adapter。
不过它不支持使用jruby的require来导入jdbc驱动jar包,需要把jar添加到classpath路径,这个可不好,于是我hack了一下,让它支持jruby的require,同时加入了Sql Server的adapter。使用这个包建立数据库连接很简单:
JDBC::DB.start(:mysql,"localhost","3306","username","password","tablename") do |db|
......
end
jdbc支持很多数据库,只要将:mysql,改成其它adapter,就可以支持其它不同的数据库,话不多说了,现把我hack的jdbc-wrapper传上,给那些有需要的人吧。
分享到:
相关推荐
jruby-complete-1.7.19.jar,java版本的ruby解析器
burpsuite插件接口ruby,直接在burp extend option里面添加,就可以在store里面添加需要的插件啦
jruby-console-0.9.2.jar groovy-1.0-beta-2.jar groovy-all-1.8.6.jar bsh-1.3.0.jar
jruby-dist-9.1.15.0-bin.zip JRuby是面向Ruby、基于Java虚拟机(JVM)的一种解释程序,它结合了Ruby语言的简易性和功能强大的JVM的执行机制,包括与Java库 全面集成。 截至2017.12.08最新稳定版 JRuby 官方更新说明:...
**标题解析:**"jruby-...总之,"jruby-bin-0.9.0.tar.gz"是一个包含早期版本JRUBY的压缩文件,为开发者提供了在Java平台上使用和开发Ruby代码的能力,结合了两种语言的优点,为开发工作带来了更大的灵活性和便利性。
这个“jruby-bin-1.3.1.zip”压缩包是JRuby的一个早期版本,专为Ruby语言的研发提供必要的工具和环境。在这个版本中,重点是兼容性、性能和稳定性。 1. JRuby的介绍: JRuby是一种开源的、完全兼容MRI(Matz Ruby ...
jruby-dist-9.1.15.0-bin.tar.gz JRuby是面向Ruby、基于Java虚拟机(JVM)的一种解释程序,它结合了Ruby语言的简易性和功能强大的JVM的执行机制,包括与Java库 全面集成。 截至2017.12.08最新稳定版 JRuby 官方更新...
找不到或无法加载主类org.jruby.Main。 原因是/usr/local/hbase/lib 目录下没有jruby-complete-1.7.19.jar文件.,下载本文件,解压缩后将jar文件直接添加到/usr/local/hbase/lib 目录下。
标题“jruby-maven-plugin-1.0.1.zip”涉及的是一个名为“jruby-maven-plugin”的构建工具,版本为1.0.1。这是一个Maven插件,专门用于集成JRuby(Java实现的Ruby解释器)到Maven构建流程中。这个插件允许开发者在...
这个压缩包“jruby-src-1.0.zip”包含了JRuby 1.0版本的所有源代码文件,对于开发者来说,这是一份宝贵的学习和定制JRuby的资源。 在了解JRuby之前,我们先来看一下Ruby语言。Ruby是由松本行弘(Yukihiro Matsumoto...
3. JRuby 支持使用 JRuby-Rack 运行 Rails 应用,可以在 Java 应用服务器上部署 Ruby on Rails 项目。 4. JRuby 还可以作为 Java 代码调用 Ruby 代码的桥梁,通过 JRuby API 实现 Java 和 Ruby 之间的互操作。 关于...
jruby-stdlib-1.7.23.jar
标题中的"jruby-src-1.1b1.zip"表明这是一个关于JRuby的源代码压缩包,版本为1.1b1。JRuby是Java平台上的一个Ruby语言实现,它允许开发者在Java平台上使用Ruby语法进行开发,同时利用Java的生态系统和性能优势。 ...
这个“jruby-bin-1.5.5.zip”压缩包包含了JRuby 1.5.5版本的二进制发行版,它是面向那些想要在Java环境中利用Ruby特性的开发者的理想选择。这个版本的发布日期可能相对较早,但它仍然是学习和理解JRuby与Java集成的...
jruby与java使用开发,听说jruby能是swing的调用变为更简单
《JRuby和Rails-让Ruby语言融入于Java项目》是一本深入探讨如何在Java环境中使用JRuby和Rails框架的教程。这本书旨在帮助开发者理解和实践如何将Ruby on Rails的灵活性和生产力引入到Java企业级开发中,从而提升软件...
ActiveRecord-JDBC-Adapter提供对以下各项的完全或几乎完全支持: MySQL , PostgreSQL , SQLite3和MSSQL *(SQLServer)。 除非我们获得更多的贡献,否则我们将不会支持更多的适配器。 请注意,获得另一个适配器...
经典版本Java 环境配套 jruby-complete-9.3.14.0 Java 开发者必备配套环境组件 jruby 目前为较新版本 可以符合大部分开发环境
该项目演示了如何在 Servlet 3.1 和 JRuby 中使用非阻塞 IO 要尝试它,请克隆该应用程序,然后运行以下命令: $ bundle install ... Using sinatra 1.4.5 Using warbler 1.4.5 Using bundler 1.7.9 Your bundle is...