我正在搜索JavaBean和Servlet之间的区别。我找到了
Servlet corresponds a Controller
JavaBean corresponds a Model
而
Java Bean 是可重用组件,而 Servlet 则是扩展服务器能力的 Java 程序。
那么,在 JavaBean 中,可重用的意思是什么?难道我们不能重用 Servlet 吗?
如果有人能举几个例子来解释一下,我将不胜感激。
我正在搜索JavaBean和Servlet之间的区别。我找到了
Servlet corresponds a Controller
JavaBean corresponds a Model
而
Java Bean 是可重用组件,而 Servlet 则是扩展服务器能力的 Java 程序。
那么,在 JavaBean 中,可重用的意思是什么?难道我们不能重用 Servlet 吗?
如果有人能举几个例子来解释一下,我将不胜感激。
Servlets和JavaBeans是完全不同的概念。Servlet API提供了服务于互联网请求的功能,通常来自客户端浏览器,但不限于此。 JavaBeans是一种封装功能的组件架构。一个典型的用途是由Servlet使用的Bean来处理数据库查询,但Bean架构在许多地方都被使用。
会话是存储与特定用户相关对象的Servlet机制,这些对象可能是Bean,也可能不是。用于创建用户界面(使用您聪明的IDE)的Bean具有更严格的要求。在Servlet和JSP中使用的Bean通常更简单。
更直白地说,JavaBeans对于Java就像ActiveX控件对于Microsoft一样。JavaBeans可以在服务器端、客户端、applet内部等运行。
因此,除了Java之外,它们没有任何共同点。
JavaBeans和Servlet都是Java EE(Java Enterprise Edition)包的概念,发布于1999/2000年。
Servlet是Java Web应用程序中使用的Java类(作为Controller)。它的作用是管理HTTP请求并生成HTTP响应。Servlet使用JavaBeans从数据库获取信息。
JavaBean是一个简单的Java类,用于表示应用程序的模型。要称之为JavaBean,该类必须具有公共getter和setter来访问所有属性,必须具有无参构造函数,并且必须可序列化。
值得注意的是,这种简单的JavaBean概念在2000年初转移到了企业级Java Bean(EJB)。但是经验证明,在Java EE环境中管理EJB相当复杂。因此,企业级JavaBeans主要被“Pojos”(普通旧Java对象)所取代,这些对象由IOC容器(例如Spring于2003年推出)普及。IOC将JavaBean拉回到其原始概念。IOC将整个EJB-J2EE模板模式、服务定位器、业务代理模式替换为简单的依赖注入(DI)。
它们是两个完全不同的东西。
Servlet 用于处理 Web 应用程序中的请求,因此与控制器类似。
Java Bean 是遵循一组规则的任何 Java 类,参见:什么是“Java Bean”?
我猜你正在阅读的内容告诉你它们如何适配 MVC 模式。
Servlet的生命周期由Web容器管理,在Java Bean的情况下,您需要初始化或启动Java Bean。
有两种类型的servlet,通用servlet支持不同类型的协议请求,而HTTPServlet支持HTTP协议。
在大多数框架(如Struts / Spring)中,它们使用servlet作为控制器来接收请求调用,并根据配置将其转发到不同的Action Class / Action Controller。