springmvc websocket-webmvc和springmvc websocket-web有什么区别

WebService与普通的MVC框架中的Controller有啥区别【一直没想明白】 - 开源中国社区
当前访客身份:游客 [
当前位置:
在我看来,WebService也是一个接口的入口而已,只是它有特定的请求报文XML格式,也是通过http去请求的,也能制定不同的响应数据(XML、JSON)、也是通过容器运行起来、看起来也相当如系统MVC模式的C层使用方式...没弄明白它的各种协议规范什么的...(soap,wsdl,等等),优势,使用场景等等
----------&----------&----------&----------&---------- 万恶分割线&----------&----------&----------&----------&----------
我们普通的Struts、SpringMVC、Servlet2.5/3.0、也能做到一个接口呀,功能也能像WebService一样,
简单的如现在比较流行的Rsetful方式URL,入参...或者/这些接口平台
或者SpringMVC中的@Controller、@Requestmapping,FROM表单提交...
或者还有比较年轻的SpringBoot,也能这样做...
----------&----------&----------&----------&---------- 万恶分割线&----------&----------&----------&----------&----------
看来我已经把全部的定义概念实现,弄混乱了,就如看起来就是一个接口,什么时候用什么技术完全没头绪。。。大家扯谈扯谈一下吧...
共有5个答案
<span class="a_vote_num" id="a_vote_num_
跨域请求需要用webservice,远程方法调用!
--- 共有 1 条评论 ---
能详细一些吗?怎么跨域的意思,我http请求不也就行了吗?怎么存在跨域了...还有远程方法调用,
(2年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
传统的webservice是提供wsdl格式的内容,通过解析这样的返回内容可以得到一些对象和方法。需要特定的client去接收并解析
而广义上的webservice则可以将SpringMVC 遵循rest规范的API也纳入范畴,对于controller提供的API可以通过简单的httpclient进行接收和请求
--- 共有 1 条评论 ---
那你意思上,广义来说,他们都是一个样咯。哈。
(2年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
有一个地方很明显不一样:
webService可以调用其他系统中的class的一个方法。controller中调用不了其他系统中的类的方法吧?
另外一个上面上面提到的一个跨域问题,一般都是js出现跨域问题。不用webService也可以解决(webService可以解决这个问题吗?一直不清楚。)。js请求本地controller,controller再通过httpClient请求其他域的接口。或者js请求jsp,jsp再请求其他的域接口都行。
--- 共有 1 条评论 ---
【webService可以调用其他系统中的class的一个方法】,调用都是做一些业务处理,数据库操作吧,开放一个接口出来也可以呀。会不会因为安全问题,不对外开放接口,只允许代码调用???
对,关于跨域的,如你所说就可以解决啦,只是代码任务上多了些操作...
(2年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
首先,WebService肯定不是MVC里的Controller,虽然这两种东西都具有接口的性质,但这不代表他们就可以用“类似”来比较。
其次,WebService本身就是编程实现的,你用不同的程序语言当然也能实现了。但是注意,这里不是说用Struts、SpringMVC之类的某某框架去实现,因为你实现的过程就已经撇开了框架,是建立在Java(或者某种语言)的基础上,这个关系也不要混淆。
最后,那为什么不自己去实现呢?自己去实现当然是可以的,但是你真正觉得你能做到专门做WebService团队的水平吗?开发的时间能保证不会得不偿失吗?代码质量和运行速度有保证吗?显然是不行的,将WebService独立出来,其实是模块化的一个例子,这些东西留给WebService去考虑,而不是你来考虑。
--- 共有 1 条评论 ---
像你所说的,比如一个快递公司,它内部一个查询快递单号的系统, 这个系统只对内使用。但对外互联网用户就重新的弄一套WebService应用使用???
(2年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
更多开发者职位上
有什么技术问题吗?
p2ng的其它问题
类似的话题SpringMVC与其它的WebMVC框架最大的区别是什么,我们该如何选择WEB框架?-java-电脑编程网SpringMVC与其它的WebMVC框架最大的区别是什么,我们该如何选择WEB框架?作者:liu_xiaohua 和相关&&Spring MVC 与其它的 Web MVC 框架 最大的区别是什么,我们该如何选择WEB 框架?用过 Spring MVC 或 其它WEB MVC 框架 的朋友可以来谈谈。------回答---------------回答(50分)---------2年前一直用Struts。后来用webwork做过一个。最近一直用Spring。给我最直接的印象是:Struts的优点1、表现层标签是个好东西。jstl和struts的配合最好。2、控制层的取form和validate很直观。servlet和struts的配合也不错。webwork的优点1、interceptor是最大的优势,这个东东不仅仅是验证用,玩好可以减轻大量的编码工作。2、别的方面和Struts差不多。Spring的优点1、不能算单纯的m,要与别的配合用才能起到m的最好效果。2、与hibernate配合起来,能感受到纯对象的操作。3、与别的框架配合是Spring的最大优点。4、控制反转对重构项目很有作用,如果你积累了足够的Spring功能代码,那做一个新项目也就是美工和写配置文件的工作。Spring的缺点:杂而不精,所有的技术都有涉及,但都不太好用,要与别的配合才能达到做好的效果。除了控制反转(PS:确实好用)Spring是做的最好的,别的都太简单。概括的说:1、追求项目的速度||你的程序员都是新手,struts是你最好的选择。2、特殊而且复杂的功能组合,那么webwork的interceptor会帮你搞定。不过技术难度比struts稍大,看你手下的水平了。3、追求完美的设计||最大的重用性,Spring会帮助你。不过难度也是最大的,你要考虑好。
------回答(50分)---------spring+struts+hibernatespring最大的能力是整合框架,对其他的框架做统一的管理,而不是做具体业务!spring做整合控制+struts业务表现+hiberbate做持久spring的ioc编程能做到最大的解耦合,以前当要引用别的class的实力时,往往是自己去new一个对象,然后编码到具体代码中,而现在有了spring通过配置文件的方式由spring容器帮你控制对象的注入(就是8楼说的控制反转)!spring的aop面向行切面的编程也是不可多得的!尝试过给一个未知的类添加新的方法么?这在别的地方是绝对不可能的,但是在spring的框架中这些都得到了很好的实现,新的业务方法称为切面,通过ioc配置和具体类结合,完美无缺!把struts的action交由spring控制,它和hibernate、jdbc的的实现部份都由spring做到了完美的结合(还是ioc),尤其是对事务的控制简直简单,用ejb的方式,通过对方法添加具体标注就做到了对事务的控制,简直是神奇!spring不是具体的web框架了,而是像个大管家,最大的是让个部分称为独立的部分,最大的解耦合!
------回答---------------回答(50分)---------
2年前一直用Struts。后来用webwork做过一个。最近一直用Spring。给我最直接的印象是:Struts的优点1、表现层标签是个好东西。jstl和struts的配合最好。2、控制层的取form和validate很直观。servlet和struts的配合也不错。webwork的优点1、interceptor是最大的优势,这个东东不仅仅是验证用,玩好可以减轻大量的编码工作。2、别的方面和Struts差不多。Spring的优点1、不能算单纯的mvc,要与别的配合用才能起到mvc的最好效果。2、与hibernate配合起来,能感受到纯对象的操作。3、与别的框架配合是Spring的最大优点。4、控制反转对重构项目很有作用,如果你积累了足够的Spring功能代码,那做一个新项目也就是美工和写配置文件的工作。Spring的缺点:杂而不精,所有的技术都有涉及,但都不太好用,要与别的配合才能达到做好的效果。除了控制反转(PS:确实好用)Spring是做的最好的,别的都太简单。概括的说:1、追求项目的速度||你的程序员都是新手,struts是你最好的选择。2、特殊而且复杂的功能组合,那么webwork的interceptor会帮你搞定。不过技术难度比struts稍大,看你手下的水平了。3、追求完美的设计||最大的重用性,Spring会帮助你。不过难度也是最大的,你要考虑好。
------回答(50分)---------
spring+struts+hibernatespring最大的能力是整合框架,对其他的框架做统一的管理,而不是做具体业务!spring做整合控制+struts业务表现+hiberbate做持久spring的ioc编程能做到最大的解耦合,以前当要引用别的class的实力时,往往是自己去new一个对象,然后编码到具体代码中,而现在有了spring通过配置文件的方式由spring容器帮你控制对象的注入(就是8楼说的控制反转)!spring的aop面向行切面的编程也是不可多得的!尝试过给一个未知的类添加新的方法么?这在别的地方是绝对不可能的,但是在spring的框架中这些都得到了很好的实现,新的业务方法称为切面,通过ioc配置和具体类结合,完美无缺!把struts的action交由spring控制,它和hibernate、jdbc的的实现部份都由spring做到了完美的结合(还是ioc),尤其是对事务的控制简直简单,用ejb的方式,通过对方法添加具体标注就做到了对事务的控制,简直是神奇!spring不是具体的web框架了,而是像个大管家,最大的是让个部分称为独立的部分,最大的解耦合!
相关资料:|||||||SpringMVC与其它的WebMVC框架最大的区别是什么,我们该如何选择WEB框架?来源网络,如有侵权请告知,即处理!编程Tags:                &                    Spring官方《深入解析Spring MVC与Web Flow》 - 书籍推荐 - 小组 - 博客园
浏览:10924
15:11 来自
Spring MVCWeb Flow
&&&&&&&&&Lasse KoskelaJavaRanch Sheriff, Test Driven
Spring MVCSpring Web FlowPro Spring
&&&&&&&&&&&&&&&&&&&&&&&&&Steve AnglinJava
Spring Web FlowSpringWebSpringWebWeb
SpringSpringWeb
Spring FrameworkSpringSourceSpring
SpringNECWebDarren DavisonSteven DevijverSpringSpringColin YatesKeith DonaldRob HarropSpringSourceSpringYatesJ2EEDonaldSpring Web FlowHarropSpringTomcat
上一话题:
下一话题:
登录后才能评论,请先或。Spring MVC框架教程
Spring MVC框架教程
Windows10用户联盟QQ群:
在Spring的Web MVC框架提供了模型 - 视图 - 控制器架构以及可用于开发灵活,松散耦合的Web应用程序准备的组件。
初学者请点击这里开始学习:&
MVC模式会导致分离的应用程序(输入逻辑,业务逻辑和UI逻辑)的不同方面,同时提供这些元素之间的松耦合。
模型(Model&)封装了应用程序的数据和一般他们会组成的POJO。
视图(View)是负责呈现模型数据和一般它生成的HTML输出,客户端的浏览器能够解释。
控制器(Controller&)负责处理用户的请求,并建立适当的模型,并把它传递给视图渲染。
DispatcherServlet
Spring的web模型 - 视图 - 控制器(MVC)框架是围绕着处理所有的HTTP请求和响应的DispatcherServlet的设计。 Spring的Web MVC框架的DispatcherServlet的请求处理流程说明如下图:
下面是对应于传入的HTTP请求到DispatcherServlet的事件序列:
接收HTTP请求后,DispatcherServlet 咨询 HandlerMapping 来调用相应的控制器。
该控制器接受请求并调用基于使用GET或POST方法相应的服务方法。服务方法将基于定义的业务逻辑设置模型数据,并返回视图名到DispatcherServlet。
DispatcherServlet将需要帮助的ViewResolver从拾取到该请求所定义的视图。
一旦视图被敲定,DispatcherServlet会传递模型数据是在浏览器上最终呈现的视图。
所有上述部件,即HandlerMapping,控制器和视图解析器WebApplicationContext 部分是纯的 ApplicationContext 必要的 Web应用程序的一些额外的功能扩展。
你需要映射所需的DispatcherServlet处理,通过在web.xml文件中使用URL映射请求。下面是一个例子,说明声明和映射 HelloWeb DispatcherServlet 的例子:
id=&WebApp_ID& version=&2.4&
xmlns=&/xml/ns/j2ee&
xmlns:xsi=&http://www.w3.org/2001/XMLSchema-instance&
xsi:schemaLocation=&/xml/ns/j2ee
/xml/ns/j2ee/web-app_2_4.xsd&
Spring MVC Application
org.springframework.web.servlet.DispatcherServlet
web.xml 文件将被保存在您的Web应用程序的 WebContent/ WEB-INF 目录。 在 DispatcherServlet 的 HelloWeb 初始化,该框架将尝试从一个名为&[servlet-name]-servlet.xml位于应用程序 WebContent/WEB-INF 目录文件加载应用程序上下文。在这种情况下我们的文件将是HelloWeb-servlet.xml。
接下来,&servlet-mapping&标记指示URL会被DispatcherServlet处理。这里全部用。jsp结束HTTP请求将由DispatcherServlet的HelloWeb处理。
如果不想用默认文件名为[servlet-name]-servlet.xml和默认位置的WebContent/WEB-INF,可以通过添加servlet 的 listenerContextLoaderListener 在 web.xml 文件中定义该文件的名称和位置如下:&&
&!-------- DispatcherServlet definition goes here-----&
contextConfigLocation
/WEB-INF/HelloWeb-servlet.xml
org.springframework.web.context.ContextLoaderListener
现在,让我们检查所需配置的HelloWeb-servlet.xml文件,放置在 Web应用程序的WebContent/WEB-INF目录:
xmlns=&http://www.springframework.org/schema/beans&
xmlns:context=&http://www.springframework.org/schema/context&
xmlns:xsi=&http://www.w3.org/2001/XMLSchema-instance&
xsi:schemaLocation=&
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd&
base-package=&com.yiibai&
class=&org.springframework.web.servlet.view.InternalResourceViewResolver&
name=&prefix& value=&/WEB-INF/jsp/&
name=&suffix& value=&.jsp&
下面是有关 HelloWeb-servlet.xml 文件的要点:
&[servlet-name]-servlet.xml&文件将被用于创建定义的Bean,会覆盖在全局范围里名字相同的Bean的定义。
&context:component-scan...&标签将使用启动Spring MVC的注解扫描功能,允许做出像&@Controller和使用@RequestMapping注解等使用。
使用InternalResourceViewResolver将有定义来解析视图名的规则。按照上述定义的规则,命名为你好的逻辑视图被委托给一个视图实现位于/WEB-INF/jsp/hello.jsp。
下一节将学习如何创建实际组件IE浏览器。控制器,模型和视图。
定义控制器
DispatcherServlet 委托请求发送到控制器,以执行特定于它的功能。注解@Controller表示一个特定的类提供一个控制器的角色。注解@RequestMapping 用于将URL映射到任何一个类或者一个特定的处理方法。
@Controller
@RequestMapping(&/hello&)
public class HelloController{
@RequestMapping(method = RequestMethod.GET)
public String printHello(ModelMap model) {
model.addAttribute(&message&, &Hello Spring MVC Framework!&);
return &hello&;
注解@Controller类定义为一个Spring MVC控制器。在这里,使用@RequestMapping第一次使用表明,该控制器上的所有处理方法是相对于/hello 路径。下一步标注使用@RequestMapping(方法= RequestMethod.GET)用于声明printHello() 方法作为控制器的默认服务方法来处理HTTP GET请求。可以定义另一种方法来处理同一URL的POST请求。
可以写在上面的另一种形式,可以使用@RequestMapping添加额外的属性如下控制:
@Controller
public class HelloController{
@RequestMapping(value = &/hello&, method = RequestMethod.GET)
public String printHello(ModelMap model) {
model.addAttribute(&message&, &Hello Spring MVC Framework!&);
return &hello&;
value属性指示该处理方法所映射到的URL和method属性定义了服务的方法来处理HTTP GET请求。有以下重要点要注意关于上述定义的控制器:
将定义所需的业务逻辑内部的服务方法。可以调用此方法在另一个方法按要求。
基于定义的业务逻辑,将在此方法中创建一个模型。您可以设定器不同的模型的属性和这些属性将被视图访问提出的最终结果。此示例创建一个具有自己的属性&message&的模型。
定义的服务方法可以返回一个字符串,其中包含要用于渲染模型视图的名称。这个例子返回&hello&作为逻辑视图名。
创建JSP视图
Spring MVC支持多种类型的视图不同的演示技术。这些措施包括:JSP,HTML,PDF,Excel,XML,Velocity,XSLT,JSON,Atom和RSS订阅,JasperReports等,但最常用JSTL JSP模板。因此,我们编写一个/WEB-INF/hello/hello.jsp简单的hello 视图:
Hello Spring MVC
${message}
在这里,&${message}是我们已经建立了控制器内部的属性。你可以在视图中显示多个属性。&
Spring Web MVC框架的例子:
基于上述理念,让我们检查,这将有助于建立Spring Web 应用程序几个重要的例子:
实例& 描述
这个例子将说明如何编写一个简单的Spring Web Hello World应用程序。
这个例子将说明如何使用HTML表单将数据提交到控制器和显示回处理结果写一个Spring Web应用程序。
了解如何在Spring MVC框架中使用页面重定向功能。
了解如何访问静态网页与动态网页在Spring MVC框架。
了解如何处理Spring MVC框架异常。
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
您的访问请求被拒绝 403 Forbidden - ITeye技术社区
您的访问请求被拒绝
亲爱的会员,您的IP地址所在网段被ITeye拒绝服务,这可能是以下两种情况导致:
一、您所在的网段内有网络爬虫大量抓取ITeye网页,为保证其他人流畅的访问ITeye,该网段被ITeye拒绝
二、您通过某个代理服务器访问ITeye网站,该代理服务器被网络爬虫利用,大量抓取ITeye网页
请您点击按钮解除封锁&

我要回帖

更多关于 spring web mvc 的文章

 

随机推荐