飞天发布时刻:2024年 Forrester 公有云平台Wave™评估报告解读 了解详情
写点什么

Apache Isis:领域驱动设计的 Java 框架

  • 2013-01-18
  • 本文字数:839 字

    阅读完需:约 3 分钟

近日,Apache发布了Apache Isis ,这是个用于快速开发领域驱动应用的Java 框架。用户可以将精力放在领域对象的开发上,Apache Isis 则负责持久化、安全与用户界面。Apache Isis 遵循六边架构模式,将领域模型置于中间位置,而表示、持久化与其他服务都依赖于领域模型。Apache Isis 在去年10 月成为Apache 顶级项目,其1.0 版于去年12 月发布。

Apache Isis 遵循约定优于配置,开发者会根据一套约定与注解来编写 POJO 领域对象。接下来,这些对象会被 Isis 框架解析,框架还会负责展现、安全与持久化。当 Web 应用或是 RESTful API 遵循了 Restful 对象规范时,Apache Isis 就可以在运行期生成领域模型的展现。开发团队可以使用自动生成的 Web 应用与 Web 服务进行快速原型,甚至是产品部署。

Apache Isis 架构

Apache Isis 可扩展且可定制。开发团队可以选择不同的视图、对象存储、安全机制、分析存储与编程模型。可用的视图有 Wicket、RestfulObjects、Scimpi、DnD、HTML、JUnit 与 BDD Concordion。可用的对象存储有 JDO、NoSQL、SQL 与 XML。安全可以通过文件、Shiro、LDAP 或 SQL 实现。分析可以存储为 XML 或是数据库中。领域对象(通常使用 Java 编写)还可以使用 Groovy 编写,使用 Groovy 编程模型组件。Isis 1.0 带有 Isis 核心、基于文件的安全、JDO 对象存储、Wicket 视图与 Restful Objects 视图。其他组件仍然在孵化器中。

要想上手,请访问 Apache Isis Quickstart Archetype 页面,你可以通过介绍使用 Isis Maven 构件创建新的 Isis 应用。这会生成一个简单的单类领域模型,用于记录待办事项。它还包含了多个 Maven POM 文件,一个是父 POM,一个是领域对象模型,其他的则是不同的组件,如 JDO 对象存储与 Wicket 视图。Isis 还有一个 CheatSheet ,用于帮助你回忆该遵循哪些约定或是该使用哪些注解。

要想了解更多信息,请访问官方的 Apache Isis文档视频示例教程。源代码位于 Isis Apache 仓库 GitHub 上也有镜像。

查看英文原文: Apache Isis: Java Framework for Domain-Driven Design

2013-01-18 03:0610440
用户头像

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

关注

评论

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

快速开发平台,高集成易扩展,进入软件疾速开发新世代

Marilyn

敏捷开发 快速开发 开发工具

快速开发平台,程序员“老师傅”必备

Marilyn

敏捷开发 快速开发 开发工具

为什么巨头都在布局SaaS生态?

ToB行业头条

SASS

五年Java开发经验,4面阿里成功拿下offer,分享一下个人面经!

Java架构之路

Java 程序员 面试 算法 编程语言

有一说一,大型信息化企业的软件系统,还是用自研的好

Marilyn

敏捷开发 快速开发 开发工具 软件设计

JVM-技术专题-深入理解内存结构

码界西柚

Java JVM

医院HIS故障,险引发人命关天大危机,竟被程序员轻松解决!

Marilyn

XJR企业级软件快速开发平台规范

Marilyn

程序员 敏捷开发 软件设计

智能时代,快速开发平台将成为主流软件开发工具

Marilyn

敏捷开发

大企内部软件系统反复故障难以解决,业内人士:唯有彻底更换

Marilyn

敏捷开发 快速开发 开发工具

spring-boot-route(十三)整合RabbitMQ

Java旅途

Java Spring Boot RabbitMQ

架构师训练营 1 期第 4 周:系统架构 - 作业

piercebn

极客大学架构师训练营

低代码开发平台,来自“未来”的软件开发方案

Marilyn

敏捷开发

Go发起HTTP2.0请求流程分析(前篇)

Gopher指北

HTTP HTTP2.0 Go 语言

JAVA代码生成器,快速开发平台之魂

Marilyn

Java 敏捷开发 快速开发 开发工具

GitHub 上开源了一个很邪恶的项目!女生勿近,18香警告...

程序员生活志

Go语言内存管理三部曲(一)内存分配原理

网管

内存管理 内存布局 Go 语言

JAVA & VUE ,分离式开发平台建造思路

Marilyn

Java Vue 敏捷开发

摆脱复杂烧脑的程序代码,利用快速开发平台轻轻松松做软件

Marilyn

敏捷开发 快速开发

标本兼治,程序员用它整体提升公司效率

Marilyn

敏捷开发 快速开发

架构师训练营第 1 期 第 4 周作业

李循律

极客大学架构师训练营

用友政务表格技术应用开发实践:预算一体化产品核心功能搭建

葡萄城技术团队

SpreadJS 用友

阿里面试官纯手打:金九银十跳槽必会Java核心知识点笔记整理

Java架构追梦

Java 数据库 架构 面试 微服务

TensorFlow 篇 | TensorFlow 2.x 基于 Keras 的模型保存及重建

Alex

tensorflow keras model save model restore tensorflow hub

MySQL-技术专题-性能优化—索引篇

码界西柚

Redis Sharding集群跟一致性哈希有什么瓜葛?

Man

一致性哈希 Jedis redis cluster

阿里内部《Java架构进阶宝典》,总结了基础、进阶、架构三个阶段的知识点

Java架构之路

Java 程序员 面试 算法 编程语言

企业开发遇到瓶颈,何不换个新思路?快速开发了解一下

Marilyn

敏捷开发 快速开发

深入分析软件快速开发平台与传统软件开发方案的优缺点

Marilyn

敏捷开发

商业智能(Business Intelligence)系统的使用及设计原则

Marilyn

敏捷开发 快速开发 商业智能

Vidyo的解决方案到底是什么?有哪些特点?

dwqcmo

音视频 集成架构 解决方案 智能硬件

Apache Isis:领域驱动设计的Java框架_Java_Bienvenido David_InfoQ精选文章