OSGi、Spring、Struts、EJB、Hibernate——一个完全新手的问题
我对这些“框架”“组件”一点也不熟悉,但是有人可以给我101介绍一下它们之间的关系吗?基本上,我想大致了解:
什么和什么是彼此对应的
什么和什么是互补技术(例如,A 作为框架可以是与 B 作为组件一起使用)
上面列出的列表中我错过了哪些我不应该拥有的大牌?
谁能给我一个高级的介绍吗?阅读前两个答案后,有人可以对 Spring 与 OSGi 进行更多解释吗——它们是否处于不同的市场(企业与移动)?
非常感谢
I am not familiar with these "framework" "components" at all, but can someone give me a 101 introduction about what the relationship they are to each other? Basically, I want to know roughly about:
what and what are counterparts to each other
what and what are complementary technology (e.g., A as a framework can be used with B as a component)
what big names have I missed above list which I should not have?
Can anyone give me a high level intro? After reading the first two answers, can someone give more explanation about Spring vs. OSGi -- are they in separate market (Enterprise vs. Mobile)?
Many thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
“vs”是不正确的,因为其中许多可以一起使用。
OSGi 是一种模块化技术(而不是框架)。它使您能够将软件分离为独立的模块,这些模块可以在不同版本中共存,无论是否有其他模块
Spring - 轻量级依赖注入容器。它允许您通过定义组件的依赖关系并让框架实例化和配置它们来连接组件,从而实现更大的灵活性(这里不能说更多的流行语)。
Struts - 一个 MVC、基于操作的框架 - 用于 Web 层
EJB - JavaEE 的业务组件 - 您放置您的业务逻辑位于 Enterprise JavaBeans 中,并且您具有开箱即用的事务处理、状态处理、(JMS) 消息消耗、计时器等
Hibernate - 一种 ORM(对象关系映射)解决方案 - 基本上它允许您使用对象 (oop) 当您有一个关系数据库作为数据存储时。
The "vs" is incorrect, because many of these can be used together.
OSGi is a modularization technique (rather than a framework). It gives you the ability to separate your software in independent modules that can co-exist in different versions, with and without other modules
Spring - lightweight dependency injection container. It allows you to wire your components by defining their dependencies and letting the framework instantiate and configure them, thus allowing for greater flexibility (couldn't say more buzzwords here).
Struts - an MVC, action-based framework - used in the web tier
EJB - The business componnets of JavaEE - you place your business logic in Enterprise JavaBeans, and you have transaction handling, state handling, (JMS) message consumption, timers, etc out of the box
Hibernate - an ORM (object-relational mapping) solution - basically it allows you to work with objects (oop) when you have a relational database as a data storage.
好吧,你也许可以尝试阅读一些有关它们的内容?
这些技术在某种程度上是正交技术,即它们并不相互排斥。例如,Spring 现在与 OSGi 互补,而 servlet 技术是 Java EE 的子集。
Well, you could probably try and read something about them?
These are to some extent orthogonal technologies, i.e. they are not mutually exclusive. Spring is now complementary with OSGi, for example, and servlet technology is a subset of Java EE.
我还建议您阅读有关 GWT 的内容。谷歌的人努力解释所有与网络相关的架构。
I also suggest you to read something about GWT. The Google guys make a good effort explaining all the web related architecture.