Ruby on Rails 之 Oracle 应用:简易教程_第1页
Ruby on Rails 之 Oracle 应用:简易教程_第2页
Ruby on Rails 之 Oracle 应用:简易教程_第3页
Ruby on Rails 之 Oracle 应用:简易教程_第4页
Ruby on Rails 之 Oracle 应用:简易教程_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.:.;Ruby on Rails 之 Oracle 运用:简易教程您能够听说过 Ruby on Rails,一个似乎正以狂风暴雨之势席卷 Web 开发社区尤其是 JEE 和 PHP 的编程人员的新运用框架。 Rails 是功能强大的 Web 运用平台,而且深受 JEE 和 PHP 的编程人员的喜欢。当您了解了 Rails 的优势后,您就会了解它为何对 J2EE 和 PHP 编程人员有如此的吸引力。首先,它运用任何自视甚高的设计方式专家都很钦佩的严厉的模型-视图-控制器体系构造;这可以解释它为什么吸引了大量 JEE 开发人员。其次,运用 Rails 可以轻松地构建根本系统 这对 PHP 开发人

2、员具有吸引力。 然而,从数据库的角度来说,Rails 还是有一些非常大的局限性。Rails 对您的数据库规划和运用程序需求做出了许多假定。例如,Rails 假定一切表都运用单一的非组合式主键。需经过 HYPERLINK / Rails 插件支持组合式主键。此外,Rails 支持多数据库而且可以对其间事务进展协调;Rails 不支持两阶段提交。本文章的目的不在于对 Rails 进展赞扬或批判,而只是对该技术的引见。其中包含表扬也包含有批判。有时批判能够看起来过重了尤其对于那些 Rails 的热爱者来说,但是请不要将 Rails 看得神乎其神。

3、运用任何 Web 运用框架都是需求技巧的,无论是 JEE、ASP.NET 还是 PHP。从长久来看,运用 Rails 能够比运用许多其他 Web 运用程序开发平台更高效,但是也需求假以时日来学习其中的技巧。 Ruby 是什么?Rails 是什么?Ruby 是一种动态编程言语,在很多方面和 Perl、Python 以及 Smalltalk 类似,但也有本人的特点。Java 和 PHP 编程人员似乎可以非常轻松地学会该言语,而且他们是 Ruby 的最忠实的拥护者。但是其他人也为该言语所吸引;这其中还包括著名的 Microsoft 王国中最资深的专家之一 Don Box。 Ruby 并不是新惹事物;

4、它创建于 1993 年,时间比 1995 年发布的 Java 或 PHP 都要久。当时 Ruby 言语虽已成熟,但不如某些其他言语受欢迎。因此,Ruby 编程言语的周边体系并不像 Java、PHP 或 Perl 那样丰富。因此,您能找到的有关该言语的框架、信息库、书籍、Web 站点、网志和其他资源也相对较少。 David Heinemeier Hanson 提出了 Rails 框架Ruby 历史上最受欢迎的运用程序后,Ruby 社区的脆弱无力的市场表现近期发生了变化。Rails 将 Ruby 编程言语扩展为域特定的言语,特别适宜 Web 开发。它还运用了另一种言语扩展 ActiveRecord

5、,使 Ruby 具有对象关系耐久性。除了不支持组合主键和两阶段提交外,运用 Rails 的最大妨碍是您需求学习一种新的编程言语。这对大多数人来说都是不可忽视的问题;学习新言语是一项有趣的但令人望而却步的义务。 然而,假设您希望学习更多言语,我想没有别的言语比 Ruby 更值得引荐了。Ruby 代表着 10 年无商业利益篡改开发的巅峰。因此,Ruby 是受欢迎的言语,而且在很多情况下比 Java、C、或 Microsoft .NET 言语更高效。能够要排除 Microsoft .NET 环境的 Python 言语端口 IronPython。Python,像 Ruby 一样,是一种动态高效的编程言

6、语。 Rails 的用途 Rails 的设计初衷是创建运用关系数据库后端的动态 Web 站点。它将关键词添加到 Ruby 编程言语中,从而使 Web 运用程序更易于配置。此外,它还可以从现有的数据库方式中自动生成完好假设有些粗略的 Web 运用程序。后者既是 Ruby 的最大优点也是它的致命缺陷。Rails 对数据库方式命名惯例做出了假设,如遵照这些假设,只需执行一个命令即可生成一个根底 Web 站点。但是要完成此操作需求额外的配置,在一些情况下,那么是根本无法实现的。您还能够发现 Rails 期望的每一个数据库惯例都可以被覆盖,但是需求做的覆盖越多,平台的效率就越低。这就是为什么 Rails

7、 在运用新数据库开发“绿色领域运用程序时非常强大的缘由。不幸的是,它在处置原有系统时并不是一个很好的处理方案。 要展现 Rails 在绿色领域运用程序开发中的作用,最好的方法是经过例如。假设您曾经安装了 Oracle 数据库,并可以在其中创建新的数据库和表,那么创建一个完好的 Web 运用程序只需不到 15 分钟的时间。在这种情况下,我们将运用 Ruby of Rails 来构建一个产品目录。 例如:简单产品目录 2005 年,我开场投资于高级 (HG) 漫画书,特别是 1946 年以来的旧书。我创建了一个简单的 Ruby on Rails 数据库运用程序,这样我可以随着新漫画书的买入和卖出对

8、其进展插入、挪动、修正和删除。由于仅供我个人运用,所以我将它做得特别简单。本文即将开发的运用程序是我在家运用的 Ruby on Rails 运用程序的删节版。 虽然 Rails 和 Oracle 数据库可以运用于多种平台,但本文中将偏重于 Oracle 运用程序开发人员最常运用的操作系统之一 Windows XP。本例如非常简单;根本上是等同于“Hello World编程言语例如的数据库。这只是为了让您简单了解一下 Ruby,而并不展现 Rails 的全部功能,至多只是个用于演示恣意编程言语完好功能的“Hello World例如。 假设您在本例如中遇到问题,能够是以下三种缘由之一引起的:不是您

9、下载了错误的代码,就是您的数据库没有设置为允许衔接,再或者就是您的 Windows XP 操作系统的问题。在开发本例如的过程中,我遇到了一些版本控制和数据库配置的相关问题 都是由于无知呵斥的。多亏了我的一个朋友 Michael Carland,我才干完成此例如并让本例如尽能够简单。 现实是,让 Ruby on Rails 和 Oracle 协同任务并不简单。实践上,有时还能够有点令人沮丧。严厉按照本文阐明执行,您应该不会遇到问题。但是,假设超出了本例如范围,能够会出现一些问题。Rails 可以非常高效,但它是一个命令行开发环境,而且不附带通常与高级集成开发环境相关联的“自动魔术。假设您不是一个

10、“本人动手做的技术人员,那我这次将不会向您引荐 Rails。 第 1 步:设置 Oracle 数据库 假设您不是对结合 Oracle 运用 Rails 感兴趣,您不会阅读本文。所以您需求安装一个 Oracle 数据库实例并为此例如 Rails 运用程序创建一个方式。执行此操作最简单的方法是运用 SQL*Plus,如下所示。假定您曾经安装 Oracle 数据库并知道如何运用。本教程中运用 HYPERLINK oracle/technology/global/cn/products/database/oracle11g/index.html Oracle 数据库 11g。 运用 SQL*Plus,

11、创建一个可用于本运用程序的用户。 SQL GRANT CONNECT, RESOURCE TO ruby IDENTIFIED BY ruby;SQL ALTER USER ruby DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp;SQL EXIT假设您运用远程 Oracle 数据库,您需求安装 HYPERLINK oracle/technology/global/cn/tech/oci/instantclient/index.html Oracle 数据库即时客户端,这样您无需安装规范 Oracle 客户端也无需拥有 ORACLE_HOM

12、E 即可运转您的运用程序。要安装该软件,请执行以下步骤:访问适用于 Windows 的 Oracle 即时客户端的 HYPERLINK oracle/technology/global/cn/software/tech/oci/instantclient/htdocs/winsoft.html 下载页。 下载 instantclient-basic-win32-.0.zip。 将文件解紧缩到某个目录下。 将途径添加到环境变量 PATH 的目录中。 第 2 步:安装 Ruby、RubyGems、Rails 和 Ruby/Rails Oracle 库 要在 Windows XP 上

13、运用 Rails,您需求两套软件:带有 RubyGems 安装包的 Ruby 编程言语 Rails 2.3.2Rails 的最新版本和 Ruby/Rails Oracle 数据库。要下载并安装带有 Gems 安装包的 Ruby 安装程序,请执行以下步骤:访问 HYPERLINK / /。 下载 HYPERLINK /frs/download.php/29263/ruby186-26.exe “适用于 Windows 1.8.6-26 最终版的一键式 Ruby 安

14、装程序。 按照安装阐明进展操作。 当 Ruby 编程平台安装终了后,您就可以运用 RubyGems 了。RubyGems 是一个 Ruby 运用程序,您可以利用它来轻松安装 Ruby 框架。要安装 Rails 运用开发框架,您首先需求更新 Rubygems,由于 Rails 2.3.2 要求运用 Rubygems 1.3.1或更高版本:C: gem update -system然后安装 Rails:C: gem install rails -v 2.3.2既然您曾经安装了 Ruby、RubyGems 和 Rails,您如今可以安装特定代码库,以使您的 Ruby/Rails 运用程序可以与您的

15、Oracle 数据库效力器进展通讯。要安装 HYPERLINK / t _blank Ruby Oracle 库和 ActiveRecord Oracle Adapter,执行以下命令: C: gem install ruby-oci8 -v 1.0.4C: gem install activerecord-oracle-adapter -source ActiveRecord Oracle Adapter 的另一个选择是 Oracle ACE HYPERLINK github/rsim t _blank R

16、aimonds Simanovskis 维护的倍受欢迎的 HYPERLINK github/rsim/oracle-enhanced/tree/master t _blank ActiveRecord Oracle 加强适配器。该适配器包含可用于新的和原有的 Oracle 数据库的 HYPERLINK wiki.github/rsim/oracle-enhanced/usage t _blank 有用的其他特性,这些特性从实践工程针对原始 ActiveRecord Oracle 适配器 ( HYPERLINK /browser/adapters/oracl

17、e/lib/active_record/connection_adapters/oracle_adapter.rb t _blank activerecord-oracle-adapter) 的补丁提取而来,并 HYPERLINK blog.rayapps/2021/03/23/activerecord-oracle-enhanced-adapter-also-on-jruby-and-ruby-19/ 支持三个主要的 Ruby 解释器MRI 1.8.6、JRuby 1.1.6 和 Ruby/YARV 1.9.1。要安装 ActiveRecord Oracle 加强适配器,执行以下命令:C:

18、gem install activerecord-oracle_enhanced-adapter假设一切顺利,您如今曾经安装了 Ruby、Rails 和 Rails-Oracle 衔接库。如今,您可以创建您的第一个 Ruby on Rails Web 运用程序了。 第 3 步:创建 Web 运用程序 要创建新 Rails 运用程序,您需求按照如下所示创建一个新 Rails 工程。 运用 rails 命令行运用程序创建一个新工程这将自动创建一个新目录。 C: rails comics_catalog -d oracle转至在前面步骤中创建的新工程目录。 C: cd comics_catalogC

19、:comics_catalog既然您已创建一个新的 Rails 工程目录,如今您将需求配置您的工程以便 Rails 运用程序将运用 Rails-Oracle 衔接库。 在您的工程目录中,有一个名为 config 的目录,其中有一个名为 database.yml 的文件。您需求运用您最喜欢的文本编辑器编辑 database.yml。最初,该文件将如下所示: development: adapter: oracle database: comics_catalog_development username: comics_catalog password: # Warning: The datab

20、ase defined as test will be erased and # re-generated from your development database when you run rake. # Do not set this db to the same as development or production. test: adapter: oracle database: comics_catalog_test username: comics_catalog password: production: adapter: oracle database: comics_c

21、atalog_production username: comics_catalog password:不同的数据库需求不同的衔接属性。Rails 默许设置为运用 MySQL,但是您希望重新配置该工程以运用 Oracle。按照该 Oracle on Rails HYPERLINK /rails/pages/Oracle wiki 页面上的阐明更改开发属性。您能够还更改测试和消费属性,但是本文不讨论测试或消费版本。当在远程设备上运用 Oracle 数据库时,文件将如下所示: development: adapter: oracle database: /

22、username: ruby password: ruby假设运用 HYPERLINK github/rsim/oracle-enhanced/tree/master ActiveRecord Oracle 加强适配器,请将“oracle_enhanced而不是“oracle指定为适配器。 在 Rails 中创建 Web 运用程序有很多种方法,但是目前最简单的方法是运用 scaffold,这是一个可以在 Rails 中运用单一命令构建整个运用程序的命令行特性。C:comics_catalog ruby script/generate scaffold comic title:string is

23、sue:integer publisher:string这里的“title:string代表 Rails 中类型为“string的表列,与 Oracle 中的“varchar2类型相对应。没有命令窗口中的一系列输出,那么刚刚发生了什么?Rails 代码生成器创建了模型、视图和控制器 Ruby 代码以访问 COMICS 表。在本例如中,您创建运用程序所运用的 Rails scaffold 曾经为您做了一切的任务。 假设您对数据库表做出任何改动,您将需求再次运转 scaffold 命令。否那么,您的运用程序能够不会任务。 您还没有创建任何数据库表。Rails 可以协助 您轻松完成,执行以下命令即可

24、创建“comics表:C:comics_catalog rake db:migrate既然 Web 运用程序曾经生成,如今您可以启动 Ruby Web 效力器 WEBrick。 C:comics_catalog ruby script/server您可以随时更改您运用程序的 Ruby 代码,无需重新启动 web 效力器。然而,假设您更改数据库配置文件例如 database.yml,您将需求重新启动效力器。 如今,您可以在您本人的开发设备上运用您最喜欢的 Web 阅读器访问您的 Rails Comic Catalog 运用程序了。只需访问以下 URL。 HYPERLINK localhost:3

25、000/comics/ localhost:3000/comics/您的阅读器将如图 1 所示一样显示您的 Catalog 中的漫画书列表。 图 1:产品目录列表 当您运用 scaffold 创建 Rails Web 运用程序时,它将自动创建三个 Web 组件,从而使您可以看到目的数据库表中一切记录的列表,并对表中的记录进展插入、修正和删除的操作。图 1 显示了例如数据列表。 除了 Listing 视图,还有详细信息视图。只需单击恣意“Show链接即可查看专门显示该特定记录中数据的 Web 页面。图 2 是该详细信息页面的例如。 图 2: 详细信息页面 您还可以在数据库表中编辑任何记录。单击“Back链接,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论