cuba开发_使用CUBA进行开发–与Spring相比有很大的转变?

cuba开发 阅读另一个供内部公司使用的Web项目的要求时,您(至少是我自己)通常会看到一个很普通的集合:定义明确的数据存储结构(或有时是现有的旧数据库),大量的数据输入形式,非常复杂的业务逻辑,报告和与许多现有公司系统的集成,从会计到供应管理,成千上万的并发用户。 你首先想到的是什么? “好的,我将使用著名的RDBMS,Hibernate / JPA + Spring Boot,添加RE...
摘要由CSDN通过智能技术生成

cuba开发

阅读另一个供内部公司使用的Web项目的要求时,您(至少是我自己)通常会看到一个很普通的集合:定义明确的数据存储结构(或有时是现有的旧数据库),大量的数据输入形式,非常复杂的业务逻辑,报告和与许多现有公司系统的集成,从会计到供应管理,成千上万的并发用户。 你首先想到的是什么?

“好的,我将使用著名的RDBMS,Hibernate / JPA + Spring Boot,添加REST API并使用我最喜欢的/最新的JS框架来实现UI。”

“啊。 而且我需要设置Spring Security。 也许添加一些自定义代码以保护行级别的数据。 我将如何实施? 可能是数据库视图或虚拟专用数据库。”

“以及所有这些DAO –它们相似且无聊,但我需要实现它们。”

“并使用ModelMapper之类的工具将JPA实体转换为REST的DTO。”

“而且别忘了告诉我们的新实习生John有关懒惰的获取和JPA加入。”

“哦,男孩,我可以摆脱所有这些常规工作,而专注于关键的业务逻辑实现,而不是实现另一种登录表单和实体到DTO转换吗?”

本文适用于使用Spring框架(包括Spring Boot)从头开始实施至少两个项目,并且现在正在考虑提高生产力的开发人员。 在本文中,我将向您展示如何使用CUBA平台摆脱非常常见的消磨时间的例行任务。

又是另一个框架?

古巴

当开发人员听说一个新框架时,他们面临的第一个问题是:“为什么当我可以使用Spring Boot并像以前一样从头实现所有东西时,为什么需要它?”。 好吧,很公平–新平台需要学习新原理并应对新局限,而将您多年的经验都抛在后面。 即使您当前的框架不够出色,您也知道这一切,也知道它们的所有陷阱和变通办法。

但是,如果我告诉您,CUBA不需要传统的Spring开发方式的U形转弯(或什至是直角转弯),而是略微走了一步,就可以消除数百行DTO和DTO产生的样板噪声。转换工具,数据分页或数据过滤组件的实现,为Spring Security创建配置文件(JPA,Cache等)。

我们将从头开始,然后说明CUBA应用程序开发如何遵循几乎所有基于Spring的应用程序所使用的模型,从而使您能够使用在开发人员的职业生涯中学到的所有Spring功夫技能,并在结束。 本文着重于后端代码,以使我们的故事更小,更简洁。

Spring应用架构

Spring应用程序的典型体系结构可以轻松地搜索到,在90%的情况下,它可以表示为具有某些跨领域区域的三层应用程序。 让我们看一下“经典” Spring应用程序。

古巴SpringApp Arch

域模型 –通常是手动创建的。 但是,有一些工具可用于基于数据存储结构创建域模型。

存储库层 –与数据存储一起使用的类。 也称为“ DAO”,“存储库”等。这是所有这些ORM框架(及其兄弟姐妹)的规则。 它通常包含仅使用域模型中的一个实体类执行CRUD操作的类。

服务层 –有时,开发人员会创建一个附加层来分隔业务逻辑和数据CRUD操作。 如果您具有涉及不同类型的数据源,外部服务集成等的复杂业务逻辑,则此层很有用。

Web /控制器层 (REST / MVC)-处理REST API(将由基于浏览器的应用程序使用)或使用JSP,模板框架(百叶窗,Velocity)或JVM框架(GWT, Vaadin,Wicket等)。 通常,由于API结构或视图中的表示形式,控制器会操纵DTO而不是实体对象。 因此,开发人员通常必须在实体模型和DTO模型之间实现双向转换。

古巴船长明显

如果以上所有内容听起来都很熟悉(甚至对您来说就像“上尉队长”一样)–这是一个好兆头,意味着您将能够毫无障碍地开始使用CUBA。

参考应用–宠物诊所

他们说:“言语便宜,请告诉我您的代码”。 Spring有其自己著名的“参考”应用程序– Pet Clinic,可在GitHub找到 。 下面我们将展示如何使用CUBA为Pet Clinic的新叉子开发后端时如何使用Spring Developer的技能。 有一个很好的和详细的安托万·雷伊参考应用程序的说明

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值