javabean vs servlet

时间:2012-12-06 15:30:30

标签: java servlets javabeans reusability

我在寻找javabean和servlet之间的区别。我找到了

Servlet corresponds a Controller
JavaBean corresponds a Model

  

java bean是一个可重用的组件,其中servlet是java   扩展服务器功能的程序

现在,javabean中的可重用性意味着什么。我们不能重用servlet吗?

如果有人能解释一下,我会很感激,只举几个例子。

5 个答案:

答案 0 :(得分:27)

Servlets和JavaBeans是完全不同的概念。 servlet API通常从客户端浏览器提供服务Internet请求,但不限于此。 JavaBeans是用于封装功能的组件体系结构。典型的用法是servlet用来处理数据库查询的bean,但bean架构在很多地方使用。

会话是用于存储与特定用户相关的对象的servlet机制,这些对象可能是也可能不是bean。用于创建用户界面的Bean(使用聪明的IDE )具有更严格的要求。 servlet和JSP中使用的bean通常更简单。

使Java更加直接,JavaBeans对Java来说是ActiveX控件对微软的控制。 Javabeans可以在服务器端,客户端,applet等中运行。

因此,除了Java之外,两者都没有任何共同之处。

答案 1 :(得分:13)

JavaBeans和Servlet都是1999/2000年Java EE(Java企业版)软件包发行版的概念的一部分。

servlet是java Web应用程序中的Java类(用作Controller)。它的作用是管理HTTP请求并生成HTTP响应。例如,Servlet正在使用JavaBeans从数据库中获取其信息。

JavaBean是一个简单的java类,用于表示应用程序的模型。要被称为JavaBean,该类必须具有所有属性的公共getter和setter,必须具有无参数构造函数,并且必须是可序列化的。

有趣的是,理解这个简单的JavaBean概念在2000年初迁移到Enterprise Java Bean(EJB)。但经验证明,在Java EE环境中管理EJB非常复杂。因此,Enterprise JavaBeans主要被IOC Containers(如2003年的Spring)推广的“Pojos”(普通旧Java对象)所取代。国际奥委会将Javabean撤回到以前的概念。 IOC将整个EJB-J2EE模板模式,服务定位器,业务代表模式替换为简单的依赖注入(DI)。

答案 2 :(得分:7)

它们是两个完全不同的东西。

servlet用于处理Web应用程序中的请求,所以是的,它类似于控制器。

Java bean是遵循一组规则的任何java类,请参阅:What is a "Java Bean"?

我猜你正在读的是告诉你每个人如何适应MVC模式

答案 3 :(得分:0)

  • Servlet的生命周期由Web容器管理,如果是Java Bean,则初始化或启动Java Bean。

  • 有两种类型的servlet,Generic Servlet支持不同类型的协议请求,其中HTTPServlet支持HTTP协议。

  • 在struts / Spring等大多数框架中,他们使用servlet作为控制器来接受请求调用并依赖于配置,它将调用转移到不同的Action Class / Action Controller

答案 4 :(得分:0)

Java bean是一个数据访问对象,用于与数据库交互.Java bean是一个POJO(普通旧Java对象)。一个servlet与JSP一起使用,就像JSP的接口一样。 java bean和Servlet都是MVC的一部分。