写点什么

JLINQ: Eclipse 的运行时 JDBC 生成器

  • 2007-09-05
  • 本文字数:1002 字

    阅读完需:约 3 分钟

BM 公司的 Azadeh Ahadian 最近在 IBM 的 DeveloperWorks 网站发表了介绍JLINQ 的文章。她认为JLINQ 是“IBM 为Java 数据库应用开发所提供的新范例”。除了在名称上相似之外,JLINQ 与微软的LINQ 基本是两码事,实际上JLINQ 是Eclipse 的插件,提供数据库整合与运行时DAO 代码的生成功能。JLINQ 插件是IBM Developer Workbench 的一部分,将出现在下一个版本的DB2(Viper)之中。

Eclipse 的插件 JLINQ 提供了数据库操作以及从数据库表或 SQL 语句中生成 Java 对象的功能。Ahadian 列出了 JLINQ 的三种主要用法:

  • Database-driven objectization (DDO):JLINQ 最常用的用法就是选择一个表,为数据访问与操作生成对应的对象,或是对其进行 CRUD 的操作。JLINQ 就是通过这种方式,在选中的数据表中,为执行 CRUD 操作而生成基于面向对象的类和接口。
  • Query-driven objectization (QDO):JLINQ 系统通过简单的查询语句选择,然后在直观的 GUI 界面中,通过弹出的上下文菜单,轻松生成相关对象的类层次结构。
  • Object-relational mapping (ORM):JLINQ 提供了一对一映射的机制,将类名映射到数据库中指定的表名,并且可以将类的 protected 或 public 变量映射为数据表的列名。

JLINQ 可以在设计阶段生成与 JPA 具有相似注解(annotation)的接口。在编译阶段,JLINQ 生成可以处理自定义对象 CRUD 操作的 接口。虽然 Ahadian 认为 JLINQ 是个 ORM 工具,但 JLINQ 并不像 Hibernate 那样会提供任何高级特性,例如多态、组合以及缓存等。甚至 没有任何相关文章或发布说明中提到过对于 JLINQ 使用的支持。JLINQ 与 Eclipse 的集成情况很好,并且将会节省开发时间,但是由于有类似 JPA 和 Hibernate 的存在,JLINQ 要想吸引公众的注意力还会有不少困难。

由于 JLINQ 与微软的 LINQ 在功能上并不相干,所以对于 JLINQ 最初的反对意见来自于名称上。 Jesse Davis 是这样描述两者不同的:

LINQ 的含义是语言集成查询(Language INtegrated Query),很明显的名不符实。我不清楚是否微软对于 LINQ 的名称具有特殊的权利,但我认为 IBM 使用这样一个从技术角度来讲存在谬误的词条,这种做 法是有欠妥当的。LINQ 实际上是集成在编程语言自身的机制。…JLINQ 并不属于此类。JLINQ 仅是 IBM 为 Eclispe 制作的新的 ORM 风格 的代码生成器。

Channel9 的一个讨论帖子上,对于 JLINQ 这个名称的选择同样也引起了争论。

查看英文原文: JLINQ: Runtime JDBC Generator for Eclipse

2007-09-05 09:401450
用户头像

发布了 74 篇内容, 共 15.1 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

Sentinel Go-毫秒级统计数据结构揭秘

柠檬汁Code(binbin0325)

数据结构 源码分析 限流 Sentine 10月月更

静态代码分析 | 数字驾驶舱时代,如何确保车载信息娱乐系统的网络安全?

龙智—DevSecOps解决方案

网络安全 车载信息娱乐系统 IVI

数据库基础

说故事的五公子

MySQL 数据库 sql

Surpass Day——Java static关键字、继承、方法覆盖

胖虎不秃头

Java 10月月更 se

议题征集|Flink Forward Asia 2022 正式启动

Apache Flink

大数据 flink 流计算 实时计算

Web3流支付迎来新质变,Zebec开放Zepoch节点申请

西柚子

Arduino ESP32-C3 入门初探

矜辰所致

Arduino ESP32-C3 10月月更 Ard

九鑫智能正式加入openGauss社区

建木v2.5.6发布

Jianmu

DevOps 持续集成 jenkins CI/CD gitops

七天杀上GitHub榜首!Java并发编程深度解析实战,JUC底层原理揭秘

Geek_0c76c3

Java 数据库 开源 程序员 架构

SpringCloud版本升级后bootstrap.yml配置不生效

共饮一杯无

Java SpringCloud spring-boot 10月月更

Web3流支付迎来新质变,Zebec开放Zepoch节点申请

鳄鱼视界

直呼内行!阿里大佬离职带出内网专属“Redis设计应用实践”学习笔记

Geek_0c76c3

Java 数据库 开源 程序员 架构

Surpass Day——Java 多态、final关键字、常量、package、import、访问控制权限修饰符

胖虎不秃头

Java 10月月更 se

LinkedList源码分析(一)

知识浅谈

linkedlist 10月月更

思特奇加入openGauss开源社区,共同推动数据库产业生态发展

数据库 开源社区

要求必须使用强密码

源字节1号

openGauss开源2周年,破解数据库生态痛点

文盘Rust -- struct 中的生命周期

京东科技开发者

redis rust 生命周期 Trait Trait Objects

关于 Angular view Query 的 id 选择器问题的单步调试

汪子熙

typescript 前端开发 angular web开发 10月月更

Surpass Day——Java this关键字

胖虎不秃头

Java 10月月更 se

即时通讯技术周刊(第1期):懒人网络编程系列 [共14篇]

JackJiang

网络编程 即时通讯 IM

Qt | 按钮控件的使用 QCheckBox

YOLO.

qt 10月月更 C++

代码质量与安全 | 清洁代码(Clean Code)比您认为的更重要

龙智—DevSecOps解决方案

clean code 清洁代码

版本控制 | 一文了解VR内容创作的步骤与关键技术

龙智—DevSecOps解决方案

vr VR/AR

线下活动 | 龙智Atlassian ITSM 解决方案即将亮相2022全球运维大会上海站

龙智—DevSecOps解决方案

gops GOPS全球运维大会

openGauss社区理事长江大勇:openGauss联合产业界创新,共建开源数据库根社区

开源数据库

一名在读研究生的自白:我为什么会沉迷于openGauss 社区?

Qt | 实现网页历史记录和查找功能 QWebEngineView

YOLO.

qt 10月月更 C++

.NET现代化应用开发 - CQRS&类目管理代码剖析

MASA技术团队

.net CQRS MASA Framewrok MASA

拿到字节跳动offer后,又收到了阿里的面试邀请,二面迎来了P9"盘问"

Geek_0c76c3

Java 开源 程序员 架构 开发

JLINQ: Eclipse的运行时JDBC生成器_Java_Rob Thornton_InfoQ精选文章