报名参加CloudWeGo黑客松,奖金直推双丰收! 了解详情
写点什么

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:0610443
用户头像

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

关注

评论

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

全程干货!拍乐云受邀LiveVideoStackCon,首席科学家分享拥塞控制最佳实践

拍乐云Pano

行动起来!为迁移到自己的证书颁发机构做好准备!

亚马逊云科技 (Amazon Web Services)

芯片设计软件上云新思路!看珂晶达如何高效拓宽市场 | 精选案例

亚马逊云科技 (Amazon Web Services)

计算机原理学习笔记Day11

穿过生命散发芬芳

计算机原理 4月日更

1W字|40 图|硬核 ES 实战

悟空聊架构

全文检索 elasticsearch elastic springboot 实战

专家呼吁:保护肾脏,从关注酸性尿开始

E科讯

SpringBoot极简集成Shiro

Java小咖秀

spring springboot shiro

面试加分项!为了跳槽强刷1000道Android真题,附小技巧

欢喜学安卓

android 程序员 面试 移动开发

【提纲】专访融云 CTO 杨攀 | 物联网城池应用和发展

李孟聊AI

调查采访能力考核

游戏开发者福音!我们和 TapTap 将为您提供全套的发行服务!

亚马逊云科技 (Amazon Web Services)

重磅更新!运维工程师打怪升级进阶之路 3.0(体系化带你全面从入门到企业实战)

民工哥

Linux 后端 linux运维 运维工程师 linux学习

搭载自研处理器 Amazon Graviton2 的 Amazon EC2 X2gd 已全面可用 | 新服务上线

亚马逊云科技 (Amazon Web Services)

使用 Amazon SageMaker 特征存放区存储、发现和共享机器学习特性!

亚马逊云科技 (Amazon Web Services)

多源数据即席查询Trino(Presto)引擎剖析

小舰

4月日更

模块2的作业

谢博琛

LeetCode题解:145. 二叉树的后序遍历,栈,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

浪潮云洲链全面接入“星火·链网”

工业互联网

Linux tree命令

一个大红包

Linux linux命令 4月日更

华为云PB级数据库GaussDB(for Redis)揭秘第八期:用高斯 Redis 进行计数

华为云开发者联盟

redis GaussDB(for Redis) 计数器 计数

玩一玩Tiktok

箭上有毒

4月日更

【LeetCode】实现 strStr()Java题解

Albert

算法 LeetCode 4月日更

架构实战营 - 模块 2- 总结

吴建中

架构实战营

混沌工程=可观测性+探索性测试?

混沌工程实践

云原生 可观测性 混沌工程 测试右移 探索性测试

我们携手东软集团,助力智能汽车“乘云转型达四海” | 精选案例

亚马逊云科技 (Amazon Web Services)

架构实战营 - 模块 2- 微信朋友圈高性能复杂度分析

吴建中

架构实战营

TikTok安装

箭上有毒

4月日更

搭建亿级时间线数据的监控系统,我有绝招!

华为云开发者联盟

Grafana 监控系统 GaussDB(for Influx) 华为云数据库 时间线

聪明人的训练(二十)

Changing Lin

4月日更

NoCode 实战 | 想要开发在线选课系统?何必那样大费周章!

亚马逊云科技 (Amazon Web Services)

抢购倒计时自定义控件的实现与优化

vivo互联网技术

动画 安卓 自定义控件 倒计时

神级Android进阶笔记!一次关于JVM的面试经历,建议收藏

欢喜学安卓

android 程序员 面试 移动开发

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