我必须研究使用JBoss和Seam构建用户界面的可能性,这些用户界面保存在由现成的包控制的数据库中。我一直在阅读一些Seam文档和其他各种来源,但我似乎无法清除我目前所遭受的困惑。
我的问题是我到目前为止所阅读的所有内容都谈到使用JPA / Hibernate直接访问数据库模式并将数据直接保存在数据库模式中,但我正在使用的包不允许(或主动阻止)直接更新到它控制的任何架构。然而,它确实呈现了看起来像作为EJB提供的综合数据访问API。基本的假设是完全可能的,我的问题是如何构建一个使用这个EJB进行所有数据访问的Seam应用程序?这是一件简单的事情,还是我正在走向一大堆痛苦?有人能指出我阅读有助于我的材料的方向吗?
为这个问题的新手性质提前道歉,但我已经深入研究了这一点,我正在努力学习这么多新知识。任何帮助都将非常感激地收到。
非常感谢
史蒂夫
答案 0 :(得分:0)
Seam主要是一个控制反转(IoC)容器,它为Web开发提供了许多样板功能。使用JPA / Hibernate没有真正的硬性要求。只是Java Web开发最常见的场景是由ORM映射的数据库后端,其中JPA / Hibernate可能是事实上的标准。
如果您的数据访问层(DAL)不存在或只是现有API(Web服务,REST等)的包装,Seam也将非常轻松地处理该场景并为您提供其所有剩余功能(会话)管理,JSF集成,安全性,导航流程管理等等。
本质上,一个简单的组件(或一组)暴露你提到的API并处理它的状态应该就足够了。然后,我不知道你的要求,所以我不能肯定地说。
更复杂的例子是Seam 3中的Seam Social模块。它使用Twitter,Facebook或其他社交网络API连接到这些服务并将它们注入Seam的上下文中,以便您的应用程序可以利用它们的功能。我不知道你的场景是否如此复杂以至于它需要你从头开始构建一个完整的CDI模块(如Seam Social所做的那样),但是看看他们的documentation。它可能会为您提供进一步调查的一些想法。