写点什么

新的开源项目提供了面向对象的数据访问

2008 年 8 月 01 日

Kasper Sørensen 在 eobjects.dk 上创建了一个叫做 MetaModel 的新的开源项目。该项目是一个通用的领域模型、查询引擎以及对不同类型数据存储的优化器,如关系数据库和一般文件。MetaModel 是一个 Java 库,提供了一个流动的、面向对象的接口以进行SQL 兼容的查询。

MetaModel 为“数据存储”领域提供了一个通用的领域模型。例如,该库提供了诸如 Table、Column、Query 以及 DataSet 这样的领域对象,它们可用来查询数据源,甚至还能构建或者调整数据存储的结构。该模型使得你可以通过 JDBC 创建并操纵 SQL 查询。它还提供了针对 CSV 和 Excel 文件的相同的查询能力。

MetaModel 的查询引擎完全是面向对象的。它允许我们使用 Java 对象进行查询进而代替了专有或者容易出错的语言。在创建查询时它还提供了一定程度的类型安全。

关于 MetaModel 库的有用性,Sørensen 说到:

它基于已被大家广为接受的标准和类型安全的查询语句,强制使用更好的方式与数据进行交互。该框架小巧且简单,但是很强大,这使得使用和学习起来都很简单。

该项目站点声明了 MetaModel 的总体目标就是提供一个 Java API,可以:

  • 遍历和构建数据存储源的结构。
  • 以类似 SQL 的方式执行数据存储中立的查询。
  • 通过查询引擎提供不支持查询的数据存储。
  • 支持 JDBC 数据库、CSV 文件及 Excel 表格。
  • 将单独的查询分割为产生相同结果的多个查询,这对于重负载的情况可以进行性能优化和网格执行(grid execution)。

eobjects.dk 还提供了使用MetaModel 进行编程的webcast,展示了使用领域模型与不同的数据源(CSV 及MySQL DB)协同工作的基本内容。该webcast 的前半部分详细讲述了与数据存储交互的核心类DataContext 的使用。后半部分解释了如何使用库中的类来生成查询语句。

MetaModel 并不是 O/R 映射工具的等价物或者替代品。它提供了一种更加简单的方式无需直接使用 JDBC 就能与数据库交互。

查看英文原文: New Open Source project provides Object Oriented data access

2008 年 8 月 01 日 05:18366
用户头像

发布了 88 篇内容, 共 247.5 次阅读, 收获喜欢 2 次。

关注

评论

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

数据库与缓存的一致性方案演进

邱学喆

缓存 一致性

区块链如何助力中小企业解决融资难题

CECBC区块链专委会

区块链

MySQL-技术专题-知识点介绍

李浩宇/Alex

MySQL

京东资深架构师带你深入理解 Spring Cloud 核心组件与底层原理

互联网架构师小马

那些不得不知的缓存知识

云流

Java 缓存 程序员 面试

架构学习 笔记1

felix徐

架构实战营

redis+docker构建主从环境

小铨

redis Docker redis+docker 主从环境

Redis 内存碎片清理

escray

redis 极客时间 学习笔记 3月日更 Redis 核心技术与实战

mysql实现主主数据库(双机热备)

大奎

Kubernetes Ingress 可视化编辑器

倪朋飞

Kubernetes 网络

一束光的旅程

脑极体

一篇文章让你彻彻底底理解 I/O 多路复用

云流

Java 程序员 架构 面试 计算机

MySQL-技术专题-使用规范

李浩宇/Alex

MySQL

K8s各节点常用命令

happlyfox

学习 k8s 3月日更

周小川:数字货币将是下一代货币研究工作的核心

CECBC区块链专委会

数字货币

Go Modules 常见使用陷阱

Rayjun

go go modules

Vue3源码 | 如何挂载组件元素?

梁龙先森

源码分析 Vue3 前端进阶

10年后端开发程序员精心整理「C/C++ Linux服务器」 成长路线(附思维导图)

Linux服务器开发

Linux C/C++ 后端开发 Linux服务器开发 Linux后台开发

火爆全网!2021年最新发布Java面试清单(九大技术点)

比伯

Java 程序员 架构 程序人生 架构师

渣硕试水字节跳动,本以为简历都过不了,123+HR面直接拿到意向书

云流

Java 编程 程序员 架构 面试

什么?你居然还不知道Docker是什么?看看京东首席架构师怎么说的

互联网架构师小马

Docker 容器

使用雪花 id 或 uuid 作为 MySQL 主键,被老板怼了一顿!

Java小咖秀

MySQL 数据库 雪花算法 uuid 雪花id

Java-技术专题-Synchronized和lock区别

李浩宇/Alex

Java

管理者如何才能不亲力亲为?

石云升

项目管理 28天写作 职场经验 管理经验 3月日更

Kubernetes 弃用 Docker 后如何切换到 Containerd

倪朋飞

Docker Kubernetes 微服务

软件工程笔记:学习方法

风翱

软件工程 笔记 3月日更

Java-技术专题-ConcurrentHashMap读操作分析

李浩宇/Alex

Java ConcurrentHashMap

区块链通证经济——资产流动性的变革

CECBC区块链专委会

资产流动性

Wireshark数据包分析学习笔记Day24

穿过生命散发芬芳

Wireshark 数据包分析 3月日更

监控系统-zabbix快速入门

小铨

监控 zabbix

小鼎机器人系统开发功能及源码

系统开发咨询1357O98O718

新的开源项目提供了面向对象的数据访问-InfoQ