弃用了struts,用spring mvc框架做了几个项目,感觉都不错,而且使用了注解方式,可以省掉一大堆配置文件。本文主要介绍使用注解方式配置的spring mvc,之前写的spring3.0 mvc和rest小例子没有介绍到数据层的内容,现在这一篇补上。下面开始贴代码。
Spring MVC是结构最清晰的MVC Model 2实现。它的Action也不叫Action,而是称做Controller;Controller接收request, response参数,然后返回ModelAndView(其中的Model不是Object类型,而是Map类型)。但在其它的Web Framework中,Action返回值一般都只是一个View Name;Model则需要通过其它的
Spring MVC : 第一个接受这个请求的前段控制器叫 DispatcherServlet ,后端控制器叫 Controller 。负责处理请求 URL 和后端控制器映射的叫 HandMapping ,它有多种类型,比较灵活,也是在一个 xml 文件上进行配置。负责业务逻辑处理的模型对象一般也是我们平常写的 DAO/DTO 组件。只是它最后的返回更灵活, Controller 返回一个 Mod
Spring Framework可以被使用在很多场合之中,考虑到目前大多数Java EE的项目是B/S结构的,所以这里的快速上手教程会以Spring MVC为切入点,用最简单的代码一步一步来实现一个图书列表的页面。
Spring MVC 的文件上传
MVC模型中的控制器负责解析用户的输入信息,并将之变换处理后传入一个model,而这个 model则可能被呈现给发起请求的用户。Spring以非常抽象的方式体现了控制器的理念,从而开发人员在创建controller时将有多种选择。 Spring包含了3类controller:处理HTML表单的controller,基于command的controller,和向导风格的 controller。
Spring Framework可以被使用在很多场合之中,考虑到目前大多数Java EE的项目是B/S结构的,所以这里的快速上手教程会以Spring MVC为切入点,用最简单的代码一步一步来实现一个图书列表的页面。
springmvc的Controller(不断补充) 控制器是mvc模式中非常重要的部分。
Spring MVC处理异常有3种方式: (1)使用@ExceptionHandler注解实现异常处理; (2)使用Spring MVC提供的简单异常处理器SimpleMappingExceptionResolver; (3)实现Spring的异常处理接口HandlerExceptionResolver 自定义自己的异常处理器;
springmvc 框架围绕DispatcherServlet这个核心展开,DispatcherServlet是Spring MVC的总控制,它负责截获请求并将其分派给相应的处理器处理。SpringMVC框架包括注解驱动控制器、请求及响应的信息处理、视图解析、本地化解 析、上传文件解析、异常处理以及表单标签绑定等内容。
大部分Java应用都是Web应用,展现层是Web应用不可忽略的重要环节。Spring为展现层提供了一个优秀的Web框架——SpringMVC。和众多其它Web框架一样,它基于MVC设计理念,此外,由于它采用了松散耦合可插拔组件结构,具有比其它MVC框架更多的扩展性和灵活性。SpringMVC框架围绕DispatcherServlet这个核心展开,DispatcherServlet的作用是截获请求并组织一系列组件共同完成请求的处理工作。
@InitBinder protected void initBinder(HttpServletRequest request, ServletRequestDataBinder binder) throws Exception { DateFormat df = new SimpleDateFormat("yyyy-MM-dd"); CustomDateEditor editor = new
作为一个J2EE的开发者,我们基本上是开发基于WEB的应用系统。事实上,工作流,状态管理以及验证都是需要解决的重要功能。而HTTP协议的无状态性决定了这些功能都不容易实现。Spring的WEB框架就是来帮助我们解决这些问题的。使用Spring,我们可以让WEB框架自动将传递进来的请求参数填充到模型对象中,同时提供验证和错误处理。还可以管理用户在WEB表单中创建的对象的状态。在了解SpringMVC之前,我们先来复习下MVC。
1、客户端发出一个http请求给web服务器,web服务器对http请求进行解析,如果匹配DispatcherServlet的请求映射路径(在web.xml中指定),web容器将请求转交给DispatcherServlet.
equestMapping不但支持标准的URL,还支持Ant风格(即?、*和**的字符,参见3.3.2节的内容)的和带{xxx}占位符的URL。以下URL都是合法的
在现如今"MVC思想"满街跑的时代,基于MVC思想的MVC框架也越来越多。现在主流的框架除了Struts这个主力之外,其次就是Spring MVC了,而且相较于Struts,Spring MVC学习更加简单,更加容易扩展。更为重要的是Spring MVC在性能上是优于struts的(关于两者的优缺点现不提及了)。基于上述原因,对于中小型项目来说选择Spring MVC框架进行开发是一个非常令人愉快的决定(SSH太烦了)!
spring MVC原理
通过小型的,简单的例子,演示Spring MVC的Web框架的功能。在回顾这个演示项目,你应该对Spring MVC有一个很好的理解,并会觉得它非常易于使用。
@InitBinder protected void initBinder(HttpServletRequest request, ServletRequestDataBinder binder) throws Exception { DateFormat df = new SimpleDateFormat("yyyy-MM-dd"); CustomDateEditor editor = new
Spring 3.x Web MVC 框架struts1,webwork,strut2,springmvc,jsf@功能组件划分细致@灵活、强大@设计思想优秀@、以Controller为中心完成对系统流程的控制管理@、从请求中收集数据@、对传入参数进行验证@、根据请求调用相应业务逻辑完成数据处理@、将处理结果返回给视图@、国际化支持@、针对不同视图技术提供不同解析支持方案@、针对JSP视图技术提供标签库@、通过拦截器链实现面向方面编程完成系统级控制@、对文件上传、下载等常用功能的封装