大家好,小弟最近正在学习JAVA,JSP 
但是看到了Servlet和JavaBean 
知道JavaBean是一个组件或者说是一个类 
但是还是有些糊涂,它们两者的区别,好像都是一样的 
情大家指教,谢谢了 
头都快大了

解决方案 »

  1.   

    servlet有限制必须的内容,bean可以乱写
      

  2.   

    servlet可以在web应用里配置初始值,使用时要配置映射关系、url等,可以在web应用启动时就加载到容器中(内存),可以处理request,response......
      

  3.   

    javabean一般用于模式层,servlet一般用于控制层.
      

  4.   

    首先,servlet是一个规范,用代码来体现就是:javax.servlet.Servlet ,这是一个interface。
    只要实现了这个接口,都可以称之为是一个servlet。
    servlet在web应用程序中需要部署。就是说在 web.xml 中需要登记一下。JavaBean 也是java中的一个规范。这个规范很有特色,主要以限定命名的方式限定一些程序代码。
    这套规范你可以自己去查查。
    一般而言,随便写个java 的class都可以称为是JavaBean,因为这个规范要求很松散。通常情况下,随便写个类,封装一些操作进去,那么它就是一个JavaBean了,如果还实现了servlet接口,那么这还是一个servlet。学java,是一定要了解JavaBean的,而学jsp,是一定要了解 JavaBean和Servlet的。
    有工夫要去仔细看看这两个规范。会受益匪浅的。
    :)
      

  5.   

    顺便再多说几句:
    在java世界里,JavaBean无处不在。
    虽然随便写一个class都能成为JavaBean,但是如果你深入研究JavaBean,你会了解Java的很多精彩之处!
      

  6.   

    niko7(掠水无痕) ( ) 信誉:100 谢谢您的解释
    我的理解现在是:如果是Servlet(也可以当作一个类只不过是实现了接口的对不?)
    那么它应该也是一个JavaBean对否?
    我看JavaBean有四种属性
    好像写出来的代码很简单似的
    请您指教
      

  7.   

    大哥不要总是哦
    给我一个解释
    昨天看了一下
    JSP应用开发详解  (第二版)
    上面说随便写一个class
    都可以称为JavaBean
    然后又说写一个Servlet它的实现是通过JavaBean就是这一点偶不明白了
    偶也没看到里面有任何Bean的痕迹呀
    比如set get 方法等等
      

  8.   

    然后又说对于Structs架构
    Model 就是JavaBean实现
    Controller 是java servlet
    View 就是JSP来实现
    请指教
      

  9.   

    什么是JAVABEAN?
    实现Serializable接口并提供无参数的构造器、提供getter 和 setter方法访问它的属性的java类而已!
    (A program written in Java which is used by another application.)
    什么是servlet?Servlet是用Java编写的Server端程序,它与协议和平台无关。
    (A java program that runs on a web server.)
    2者有何异同?
    我觉得除了他们都是JAVA程序 其他没有可比性
    是静安寺不是道明寺,是源程序不是言承旭;是在静安寺写源程序,不是在流星花园看F4。
      

  10.   

    servlet和Javabean都只是一种对编写时的一种规范,按照这种规范编写来形成了一种模式。
    如果不按规范来说,这些东西都是可以互换的!也就没什么区别了!关键是规范,不要重视结果实践的功能。
      

  11.   

    实现 servlet 接口是成为一个 servlet 的基础条件。
    提供无参构造,实现序列化接口,这是一个bean的基础条件。当然,有些情况下上述3个条件都满足了,那么当然又是servlet又是bean了。
    ------------
    其实,作为一个servlet,只是在服务器上运行一下的,里面承载了业务逻辑,而不需要携带数据,所以呢,一般一个servlet是不需要实现序列化接口的,再所以呢,它就不是一个bean了。通常情况下,bean是用来做模型的,比如定义个 person,定义一个 car,而servlet适合与做控制器。
    在mvc架构中,servlet用于控制(c),bean用于携带数据到处跑(到处传递,m),而jsp用来将m与v结合,产生html,所以归为v。
    这里边,哪个m和哪个v结合,由c来控制,m内部的属性之间的关系当然由m自己来控制(需要查表的话,由m自己来查),而在页面上,哪个地方显示m的什么属性,当然由v来决定了。具体点,点了页面上的编辑按钮,c就将m和编辑的v结合,产生编辑界面。之后点了保存,那么c就通知m去保存,m就自己去写数据库,然后告诉c保存好了,然后由c来决定是继续编辑呢还是进入浏览查看状态,再让m到指定的v那里去报到。……