Web Service和Servlet的区别

转载 2016年07月13日 14:36:50
Servlet是Java对于Web开发而产生的一项技术,可以说Servlet技术是Java专有的,它是服务器端的技术,客户端通常是浏览器,    
  而WebService是在DCOM   CORBA等分布式技术之后发展起来的。WebService有一个国际通用的标准SOAP。具体规范发布在   http://www.w3.org/TR/SOAP/  
   
  SOAP是为了在Internet   环境下,实现系统是松散耦合的、跨平台的,与语言无关的,与特定接口无关的,而且要提供对Web   应用程序的可靠访问。   
    
  几乎所有的开发工具都可以开发WebService系统,包括Java,C#,甚至基于VCL架构的Delphi。而且   所开发出来的WebService系统,可以方便的被各种客户端调用,包括,浏览器,W32应用程序,还有Java   App。  
   
  可以这么说,开发一个WebService系统,把它放到互联网上,生成一个WebService描述文件.wsdl(非常容易),全世界的任何人,使用几乎任何开发工具,引用了这个wsdl,就像引用了一个动态库的头文件一样,方便的调用你的WebService接口,就像调用本地的方法一样。 

综上所述: 

  1、WebService通常是基于http的远程方法调用(RMI),号称是可以反回远程对象,    一般来说客户段可以象调用本地方法一样调用WebService的方法。   
  2、WebService使用的SOAP是一种通用的格式,不管什么样的客户端都可以。  
  3、如果你用Servlet返回XML,那个XML的描述框架就是你定的喽?你能确保别人都能看明白你的XML格式含义?  
  4、WebService并不复杂,开发起来甚至比Servlet还简单。  
  5、如果客户段需要传递一个复杂的多维数组给服务端,Servlet怎么办?  
  6。webservice的优点在于可以传递对象(其实是结构化的数据),从而对异构系统来说更有优势 
  其实最重点要的,是WebService的方法返回消息是有标准的(大家通用,谁都能看懂),如果用Servlet所返回XML,是没有标准的 

在我们的项目中,一个java web项目要使用另一个java web的方法,这时可以选择servlet和webservice方法,我们使用servlet方法,使用httpclient访问,地址为http://ip/servlet/servletname 访问成功。 
关于如何返回数据,out对象输出即可
 

servlet到是也可以传对象 只要能序列化 

其实 servlet和webservice不是一个层次上的东西 不可比 
servlet定义的是一套interface 
目的是实现 java在web上的动态访问(不知局限于http协议的 至少还有ftp协议) 

webservice定义的是一套标准(SOAP/UDDI/WSDL... 比API更抽象),与语言无关 协议无关 平台无关 
目的是实现基于service的组件(相对于EJB DCOM ....) 
从webservice的目的不难看出 他的复杂度还是相当大的 (EJB需要考虑的他都要进行实现) 包括安全性 事务性 等等.... 远不止上面列出的SOAP/UDDI/WSDL

servlet与webservice的区别[转]

协议不同:servlet 是简单http请求 webservice可以理解为http+xml协议 最近项目中有提供或者调用别的接口,在纠结中到底是用servlet还是用webservice,所以上网...
  • summer2333
  • summer2333
  • 2016年07月22日 16:37
  • 743

servlet中service doGet doPost 的关系

在servlet中默认情况下,无论你是get还是post 提交过来都会经过service()方法来处理,然后转向到doGet 或是doPost方法,可以看HttpServlet 类的service方...
  • java_belucky
  • java_belucky
  • 2014年01月23日 09:45
  • 8968

Service和Servlet的区别

1. 整体概念 Servlet是Java对于Web开发而产生的一项技术,可以说Servlet技术是Java专有的,它是服务器端的技术,客户端通常是浏览器,Servlet提供了请求/响应模式,...
  • qq_29464887
  • qq_29464887
  • 2017年03月25日 20:55
  • 2446

myeclipse里web project和web service project的区别

在 myeclipse 中新建一个项目会出现这两个很相似的选项。 区别如下: 平时开发B/S的项目,都是web项目,很少用到web service。web service是另外一个概念,是基于...
  • tlycherry
  • tlycherry
  • 2013年04月20日 16:08
  • 2399

Java中Filter与Servlet的区别和联系

Filter Servlet 接口 实现Filter接口 实现Servlet接口 使用步骤 1、创建类,继承接口 2、实现方法 init() doFilter() ...
  • zxygww
  • zxygww
  • 2015年03月17日 09:20
  • 969

Web project和java project ,web service project的区别

Web project,web service project和java project 的区别 Web project ,web service project不能直接运行,必须在容器里...
  • QMW19910301
  • QMW19910301
  • 2015年10月26日 17:05
  • 387

Web project 和 Web service project区别

Web project 和 Web service project区别1、当你是web应用时,比如说要建个网站,需要发布到服务器时,应该要建Web Project2、当你是做分布式系统时,也就是你做的...
  • xiaxiaorui2003
  • xiaxiaorui2003
  • 2009年06月17日 12:52
  • 9685

HttpServlet中的service()、doPost()、doGet()方法解析

1、service()方法源码解析 先来看HttpServlet的service()方法: protected void service(HttpServletRequest req, HttpS...
  • sinat_32560085
  • sinat_32560085
  • 2017年04月12日 16:37
  • 542

Web Application 和 Web Service 的区别与联系

不同点: Web Application: 1:对Web Application发起的请求,一般直接返回HTML或者图像数据等等。 2:从Web Application得到的结果一般都是通过...
  • saloon_yuan
  • saloon_yuan
  • 2012年07月14日 20:56
  • 2429

myeclipse 中新建web project和web service project的区别

web          project    就是平时我们的网站开发,像ssh框架之类的。 web service  project    就是web服务 专门为服务器开发应用。就好像网站都有...
  • u010015108
  • u010015108
  • 2016年11月18日 11:08
  • 1188
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Web Service和Servlet的区别
举报原因:
原因补充:

(最多只允许输入30个字)