OSGi、Spring、Struts、EJB、Hibernate——一个完全新手的问题

发布于 2024-09-16 01:00:04 字数 290 浏览 6 评论 0原文

我对这些“框架”“组件”一点也不熟悉,但是有人可以给我101介绍一下它们之间的关系吗?基本上,我想大致了解:

  1. 什么和什么是彼此对应的

  2. 什么和什么是互补技术(例如,A 作为框架可以是与 B 作为组件一起使用)

  3. 上面列出的列表中我错过了哪些我不应该拥有的大牌?

谁能给我一个高级的介绍吗?阅读前两个答案后,有人可以对 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:

  1. what and what are counterparts to each other

  2. what and what are complementary technology (e.g., A as a framework can be used with B as a component)

  3. 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

灵芸 2024-09-23 01:00:04

“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.

下雨或天晴 2024-09-23 01:00:04

好吧,你也许可以尝试阅读一些有关它们的内容?

  • Struts - 是一个在 Java servlet“技术”之上创建网站的框架
  • Spring - 是一个依赖注入“容器”,用于管理 Java 程序的配置(即将组件连接在一起)
  • Hibernate - 是一个对象关系映射框架,用于桥接关系数据库 (RDMS) 和面向对象的程序。
  • EJB - 是 Java Enterprise Edition 规范的一部分。其目的是出售大量来自 Oracle、BEA 和 IBM 的昂贵应用服务器。他们失败了(好吧,有一点);因此 Spring
  • OSGi - 是一个“容器”,用于管理由多个组件组成的应用程序,您希望在其中交换模块的实现(或升级它们)而不重新启动系统。它一开始是面向手机市场的,我从未在“企业”中真正遇到过它。

这些技术在某种程度上是正交技术,即它们并不相互排斥。例如,Spring 现在与 OSGi 互补,而 servlet 技术是 Java EE 的子集。

Well, you could probably try and read something about them?

  • Struts - is a framework for creating websites on top of the Java servlet "technology"
  • Spring - is a dependency-injection "container" for managing the configuration of Java programs (i.e. wiring your components together)
  • Hibernate - is an object-relational mapping framework for bridging relational databases (RDMS) and object-oriented programs.
  • EJB - is part of the Java Enterprise Edition specification. The point of these were to sell lots of expensive application servers from Oracle, BEA and IBM. They failed(well, a bit); hence Spring
  • OSGi - is a "container" for managing an application made of multiple components, where you wish to swap out implementations of modules (or upgrade them) without restarting the system. It started out oriented towards the mobile phone market and I've never really encountered it "in the enterprise"

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.

枯寂 2024-09-23 01:00:04

我还建议您阅读有关 GWT 的内容。谷歌的人努力解释所有与网络相关的架构。

I also suggest you to read something about GWT. The Google guys make a good effort explaining all the web related architecture.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文