jee web_您基于JEE的Web项目的结构是什么?

jee web

在这篇文章中,我将尝试讨论基于Web的项目的各种组织结构,主要是使用JSF。 开始新项目时,首先想到的是如何组织Java包? 想象一下,您开发了一个基于Web的用户和组管理系统。 很长时间以来,我使用了以下Java包结构,该结构将Bean类与模型类分开(模型类有时称为视图助手)。

结构Java1

我认为这是一个不错的布局,但是如果您有大型项目,这还不够好。 为什么? 尽管某些Bean和模型类属于同一类,但它们彼此之间的距离很远。 您必须在Bean和模型包之间导航并滚动IDE。 这会占用一些时间。 多年来,我意识到根据逻辑/语义含义对类进行分组可能会更好。 这就是说,模型包和类与它们所属的bean位于同一高级包中。 常用的bean和模型类可以放在一个额外的包中,例如common。

结构Java2

但请注意这里。 一些开发人员更喜欢炸毁bean的数量。 如果严格遵循MVC模式,则需要支持bean,控制器bean和视图接口bean。 支持bean负责组件,值绑定和事件委托。 他们将业务逻辑的执行委托给控制器bean。 控制器Bean与基础后端系统进行通信。 对概念的这种精细调整的分离提高了小型软件的可测试性,但是它导致了很多类,并且在某些情况下会使项目的结构复杂化。

结构Java3

网页是什么? 这里或多或少有两种相同的方法。 第一个遵循本文中介绍的方法。 有三个主要文件夹:模板,视图和部分。 模板是在(几乎)每个页面上使用的facelets模板。 视图是整页。 它们绑定到浏览器中的URL。 视图使用模板。 部分是页面上的小块。 视图包含各节(请考虑ui:include)。 结构如下:

structureXhtml1

您还可以在此处看到一个共享文件夹,其中包含一些常用的东西。 用户和组的页面包含一个公共部分dialogs.xhtml。 它位于/ sections / shared / usergroups下面。 正如我的负责人所说,我意识到,将页面和部分组合在一起时,将它们分组是一种更好的方法。 因此,下一个结构具有两个主要的文件夹页面和模板。 节与包含它们的页面位于相同的上级文件夹中的包含之下。

structureXhtml2

现在,在IDE导航方面,该分组看起来更加高效。 同样清楚的是哪些部分属于同一部分。 在上一张图片中,您还可以看到文件夹usergroups包含子文件夹用户,组,并且在用户/组管理的上下文中,common包含在不同页面上共享的文件夹。

您首选的结构是什么? 分享你的意见。 欢迎任何反馈。

参考: 基于JEE的Web项目的结构是什么? 来自我们的JCG合作伙伴 Oleg Varaksin,来自“软件开发思想”博客。

翻译自: https://www.javacodegeeks.com/2013/11/what-is-your-structure-of-jee-based-web-projects.html

jee web

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值