jooq支持oracle吗
我们很高兴在博客上发布新系列: jOOQ Tuesdays 。 在本系列文章中,我们将在每月的第三个星期二发布一篇文章,从jOOQ的角度采访我们发现该行业令人兴奋的人。 这包括从事SQL,Java,开放源代码以及各种其他相关主题的人员。
我们很高兴与YalımGerger一起开始本系列文章,他将向我们展示为什么他认为Oracle PL / SQL开发人员为Git做好了更多准备!
您好Yalım–您是Formspider背后的公司Gerger的创始人。 什么是Formspider?
你好 Formspider是面向Oracle PL / SQL开发人员的应用程序开发框架。 它使PL / SQL开发人员仅使用PL / SQL作为编程语言即可构建高质量的业务应用程序。 使用Formspider不需要Java或JavaScript技能。
即使从Java开发人员的角度来看,也很有趣! 本质上,您提供了一种完全绕过Java作为中间件(当然还有HTML,JavaScript,CSS)的方法。
这并非完全正确。 我们仍在产品中使用Java。 Formspider具有一个中间层应用程序,我们的客户可以将其部署到任何符合JEE的应用程序服务器。 这个中间层应用程序可帮助我们将客户端浏览器中运行的Formspider JavaScript库与数据库中运行的PL / SQL桥接。 我们还使用Java库从存储在应用程序中的数据生成Excel文件,这是业务应用程序的常见用例。 因此,是的,应用程序未使用Java编码。 我们的客户是PL / SQL开发人员。 但是我们使用Java来改进我们的产品。 与HTML和Javascript相同。 我们的工作是非常了解这些技术及其功能,并将它们作为直观的API公开给PL / SQL开发人员。
您是否还有客户通过Formspider以及自己的Java / .NET应用程序访问其PL / SQL API?
是。 我们的客户既有使用Formspider的PL / SQL团队,也有使用Java技术的Java团队。 这需要两个团队之间进行大量的协作,而这并非总是可能的。
通常,发生的情况是Java / .NET团队尝试将应用程序尽可能移离数据库。 我只是和一个在大型金融机构工作的朋友交谈,在该机构中,面向对象的人们正在努力消除所有的PL / SQL API。 他快疯了。 有多种原因。 这部分是政治争端之战,部分是对数据库软件和PL / SQL功能的纯粹无知。
我们可以感受到痛苦。 没有神奇的子弹……那他们该怎么办? 应如何构建应用程序? 您是否认为存在“正确的”架构?
不。我认为这很大程度上取决于具体情况。 您是要构建消费者应用程序还是要构建业务应用程序? 您是在开发横向产品的公司还是在某个垂直部门运营的企业的IT部门? 有太多参数要考虑。 冒着过于通用的风险,我认为为大型企业服务的IT部门不应尝试构建与数据库无关的应用程序。 真傻 相反,它应该充分利用数据库软件及其使用的其他软件。 您不应该假装是七个不同的组织来构建应用程序的七个不同层而恰好正在协作。 您只是一个组织。 那样做。 切掉脂肪。 尽可能深入地集成。 这是按时且按预算构建性能良好的应用程序的最经济有效的方法。 数据库不可知软件适用于横向软件公司。
我们最近在博客上发布了有关 双重许可 的 警告 ,我们说过,对于像Data Geekery这样的自称开源公司的公司,将我们的资源运送给付费客户至关重要。 我已经看到您也提供了您的资源-但您并不是真正在做“开源”。 您如何描述您的产品?
顺便说一句,我喜欢那篇博客文章。 我认为jOOQ的许可方式非常公平,即,如果数据库是免费的,则它是免费的;如果您的数据库有许可费,则它具有价格标签。 在我们的案例中,数据库始终收取许可费。 因此,我们没有免费的Formspider选项。 对于Oracle社区及其惯用的价格标签,我们的许可费用非常低,几乎是免费的。 任何被我们的价格甩掉的人可能都不是认真使用Formspider的。
签署了我们最高水平的支持服务的客户可能会在专业服务期间获得我们产品的源代码。 此选项对于对使用Formspider构建的应用程序进行大量投资的客户很有吸引力。
是的,Oracle的价格标签享有声誉……亚利姆,您似乎是Oracle的人。 因此,您将启动gitora 。 它是什么?
Gitora是一个免费的版本控制工具,将Oracle数据库与Git集成在一起。 在主要由Java开发人员阅读的博客中出现这个问题有点尴尬,但是大多数Java开发人员理所当然的非常常见的版本控制任务在PL / SQL中很难做到。 这是有充分的理由的。 PL / SQL没有工作目录的概念。 PL / SQL不是基于文件的语言,即,源代码单元不驻留在开发人员的专用文件系统中,而是驻留在Oracle数据库中,作为任何开发人员都可以使用的程序包,过程和函数。 这使得版本控制非常困难,即使不是不可能。
那么人们在做什么呢?
没什么。 如果需要,可以使用每日备份来返回到代码的先前状态。
一些团队创建一个工作目录,该目录挂接到版本控制,并通过通常手动提取DDL的方式将所有PL / SQL代码存储在此目录中。 那是如此复杂。
在PL / SQL中正确进行团队开发和合并非常困难,而且我还没有看到它经常成功完成。 而且我与世界各地的许多PL / SQL团队进行了互动。 Gitora使这非常容易。 它将数据库模式转换为工作目录。 如果执行Git命令,则对工作目录的任何更改都会自动在数据库模式中发生。
有趣。 我们最近为客户实施了一个本地开发的“解决方案”,该解决方案从Microsoft Team Foundation Server存储库中实现了自动版本控制和安装。 也许我们应该迁移到Gitora?
我不知道 这太酷了。 如果您构建一个适用于PL / SQL的版本控制工具并与TFS而不是Git进行对话,那么我认为这也非常有价值。 本质上,我们构建相同的产品,但使用不同的版本控制产品。 我鼓励你把它放在那里。
为什么不。 也许我们会贡献力量!
感谢您的亚利姆这个非常有趣的见解!
如果这次采访引起了您的兴趣,请在Twitter上关注Yalım,FormSpider或Gitora:
有关Gitora的更多信息,请观看Gitora教程:
翻译自: https://www.javacodegeeks.com/2014/12/jooq-tuesdays-yalim-gerger-brings-git-to-oracle.html
jooq支持oracle吗