1、spring30MVC中文教程Spring3 MVC - 3到Spring MVC框架简介 Spring3 MVC框架简介 Spring MVC是Spring的框架的Web组件。 它提供了丰富的功能,为建设强大的Web应用程序。 Spring MVC框架的架构,并在这样的高度可配置的方式,每一块的逻辑和功能设计。 此外Spring可以毫不费力地与其他流行的Web框架,如Struts,WebWork的,的Java Server Faces和Tapestry集成。 这意味着,你甚至可以告诉Spring使用Web框架中的任何一个。 比Spring更不紧耦合的servlet或JSP向客户端呈现视图。
2、喜欢速度与其他视图技术集成,Freemarker的,Excel或PDF现在也有可能。 Spring3.0 MVC系列 第1部分:到Spring 3.0 MVC框架简介 第2部分:在Spring 3.0 MVC创建Hello World应用程序 第3部分:在Spring 3.0 MVC的形式处理 第4部分:Spring3 MVC的Tiles Support与Eclipse中的例子插件教程 第5部分:Spring3 MVC的国际化及本地化教程与范例在 Eclipse 第6部分:Spring3 MVC示例教程Spring主题 第7部分:创建Spring3 MVC Hibernate 3的示例在Ecl
3、ipse中使用Maven的 在Spring Web MVC,你可以使用任何对象作为命令或表单支持对象,你不需要实现框架特定的接口或基类。 Spring的数据绑定是高度灵活的:例如,将验证错误类型不作为应用系统错误,可以通过评估的不匹配。 因此,你不必重复你的业务对象的属性,简单的无类型的字符串,在表单对象仅仅是为了处理无效的意见,或正确转换的字符串。 相反,它往往是最好直接绑定到业务对象。 请求处理生命周期 Spring的Web MVC框架是,像许多其他Web MVC框架,要求为导向,围绕一个中心的servlet,它把请求分派给控制器,提供其他功能,有利于开发Web应用而设计的。 Spring
4、 DispatcherServlet DispatcherServlet是Spring IoC容器完全集成,并允许我们使用的每一个Spring的其他功能。 以下是Spring3.0 MVC请求流程的生命周期: 客户端将请求发送到Web容器中的HTTP请求的形式。 这个传入的请求被截获由前端控制器 (DispatcherServlet的),然后它会试图找出相应的处理程序映射 。 帮助处理程序映射,DispatcherServlet将请求派遣适当的控制器。 控制器尝试处理请求和ModelAndView实例的形式返回到前端控制器模型和视图对象。 前端控制器,然后试图解决咨询视图解析器对象的视图(可以
5、是JSP,FreeMarker的,速度等) 。 选定的视图,然后返回到客户端呈现。 Spring3.0的特点 Spring3.0框架支持Java 5。 它提供了注释的配置支持。 Java 5的功能,例如泛型,注解,可以使用可变参数等在Spring。 正在引进一种新的表达语言The Spring 的表达语言规划环境地政局局长。 Spring的表达式语言可以使用,同时定义了基于XML和注释的bean定义。 Spring3.0框架支持REST Web服务。 数据格式可从来没有那么容易。 Spring 3.0支持了注释的格式。 现在,我们可以使用 DateFimeFormat(ISO = ISO.DA
6、TE)和NumberFormat(样式= Spring.CURRENCY)标注日期和货币格式转换。 Spring3.0已经开始支持JPA 2.0的。 配置Spring 3.0的MVC 切入点的Spring 3.0 MVC DispatcherServlet 。 DispatcherServlet的是正常的servlet的类,它HttpServlet HttpServlet的的基类。 因此,我们需要在它web.xml配置。 exampleorg.springframework.web.servlet.DispatcherServlet1example*.html在上面的代码片断中,我们必须在we
7、b.xml中配置DispatcherServlet的。 请注意,我们已经映射*. HTML URL模式,例如DispatcherServlet的。 因此,任何与*. HTML模式的URL将调用Spring MVC的前端控制器。 一旦DispatcherServlet的初始化,它会查找一个文件名servlet-name-servlet.xml Web应用程序的WEB - INF文件夹中。 在上面的例子中,将寻找所谓example-servlet.xml servlet.xml的框架。 请注意上面的架构图。 WebApplicationContext上图中指定ApplicationContext平
8、原扩展Web应用程序所需的一些额外的功能。 在WebApplicationContext是能够解决的主题,它也与相应的servlet相关。 在WebApplicationContext在ServletContext中的约束,并通过对RequestContextUtils类的静态方法,您可以随时查找在WebApplicationContext。 继续 现在,我们有关的Spring 3.0 MVC框架,其生命周期架构的想法, 在接下来的部分中,我们将创建一个工作Spring3.0的 Hello World应用程序从头。 Spring3 MVC:在Spring 3.0 MVC创建Hello Worl
9、d应用程序 Spring3.0 MVC系列的第2部分。 在以前的文章中,我们经历介绍的Spring MVC 3.0框架,其请求处理生命周期和体系结构图。 在这篇文章中,让我们在Spring MVC 3.0创建一个简单的的Hello World应用程序。 对于创建的Hello World演示应用程序,我们将使用Eclipse IDE中。 我们需要的东西 之前,我们与我们的第一个Hello World Struts 2的示例开始,我们将需要一些工具。 1. JDK 1.5以上( 下载 ) 2. 以上的Tomcat 5.x的或任何其他容器(Glassfish的中,WebSphere,JBoss的,在
10、Weblogic等)( 下载 ) 3. Eclipse的3.2.x中,它上面的( 下载 ) 4. Spring3.0 MVC JAR文件:( 下载 )。 以下是此应用程序所需的JAR文件的清单。 o commons-logging-1.0.4.jar o jstl-1.2.jar o org.springframework.asm - 3.0.1.RELEASE - A.jar o org.springframework.beans - 3.0.1.RELEASE - A.jar o org.springframework.context - 3.0.1.RELEASE - A.jar o o
11、rg.springframework.core - 3.0.1.RELEASE - A.jar o org.springframework.expression - 3.0.1.RELEASE - A.jar o org.springframework.web.servlet - 3.0.1.RELEASE - A.jar o org.springframework.web - 3.0.1.RELEASE - A.jar 请注意,根据Spring MVC的当前版本,上述jar文件的版本号可能会改变。 我们的目标 我们的目标是创建一个基本的Spring MVC应用中使用最新的3.0版本。 将会有
12、一个索引页,它会显示一个链接”打招呼”给用户。 点击此链接,用户将被重定向到另一页打招呼 ,它会显示一条消息的”Hello World,Spring3.0!”。 入门 让我们开始我们的第一个Spring3.0基于MVC的应用程序。 打开Eclipse转到文件- 新建- 项目,然后选择动态Web项目中的新建项目向导屏幕。 选择动态Web项目后,按” 下一步”“ 。 写项目名称。 例如Spring3MVC。 一旦做到这一点,选择目标运行时环境(如Apache Tomcat的V6.0)。 这是在Eclipse环境中运行的项目。 在此之后按下Finish。 一旦该项目被创建,您可以在Project E
13、xplorer中看到它的结构。 现在的WebContent所有所需的JAR文件的WEB - INF lib文件夹中复制。 创建此文件夹,如果它不存在。 Spring控制器类 我们需要一个Spring MVC控制器类,将处理该请求,并显示”Hello World”消息。 为此,我们将创建一个包net.viralpatel.spring3.controller的源文件夹中。 这个包将包含控制器文件。 创建一个类叫做HelloWorldController net.viralpatel.spring3.controller包并复制到它下面的内容。 文件:net.viralpatel.spring3.
14、controller.HelloWorldControllerpackage net.viralpatel.spring3.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.servlet.ModelAndView;Controllerpublic class HelloWorldController RequestMapping(“/hel
15、lo”)public ModelAndView helloWorld() String message = “Hello World, Spring 3.0!”;return new ModelAndView(“hello”, “message”, message);请注意,我们已经注明HelloWorldController类Controller和7号线和10 RequestMapping(“/hello”) 当春扫描我们的包,将其识别为一个处理请求的控制器bean这个bean。 RequestMapping注解告诉Spring,这个控制器应该处理所有请求/ URL路径打招呼开始。 这包括/
16、hello/*和/hello.html 。 在HelloWorld()方法返回ModelAndView对象。 ModelAndView对象,试图解决一个名为”Hello”和数据模型是被传递回浏览器,所以我们可以在JSP访问数据视图。 逻辑视图名称解析为”/WEB-INF/jsp/hello.jsp” 我们将讨论这在短期内如何的”Hello”,这是在ModelAndView对象返回的逻辑名称映射到路径/ WEB-INF/jsp/hello.jsp。 ModelAndView对象还包含了一个关键的”消息”和价值的”Hello World,Spring3.0!”的消息。 这是数据,我们通过我们的观点
17、。 通常情况下,这将是一个价值形式的Java bean将包含要显示的数据我们认为对象。 在这里,我们只是传递一个字符串。 这样的观点:创建JSP 要显示Hello World消息,我们将创建一个JSP。 请注意,这个JSP是创建文件夹/ WEB-INF/jsp。 创建hello.jsp下WEB-INF/jsp目录,并复制以下内容进去。 文件:WEB-INF/jsp/hello.jsp Spring 3.0 MVC Series: Hello World - ViralP$message上面的JSP只显示一条消息,使用表达式$message 。 请注意,”消息”的名称,我们在设置一个消息字符串M
18、odelAndView对象。 同时,我们也将需要一个index.jsp文件,这将是我们的应用程序的入口点。 创建一个WebContent文件夹下的文件在您的项目并复制以下内容的index.jsp。 文件的WebContent / index.jsp的 Spring 3.0 MVC Series: Index - ViralPSay HelloSpring MVC的映射Web.xml中 正如在以前的文章(Spring3.0 MVC)讨论,Spring MVC应用的切入点将是在部署描述符(web.xml)中定义的Servlet。 因此,我们将定义在web.xml中的一个条目org.springfr
19、amework.web.servlet.DispatcherServlet org.springframework.web.servlet.DispatcherServlet类。 打开web.xml文件,该文件是在WEB - INF文件夹,并复制粘贴下面的代码。 文件:WEB-INF/web.xml中 Spring3MVCindex.jspspringorg.springframework.web.servlet.DispatcherServlet1spring*.html上面的代码将在web.xml中映射URL模式*. HTML的DispatcherServlet。 另外请注意,我们已经定义
20、作为欢迎文件的index.jsp。 这里有一点要注意标签在web.xml中的servlet的名称。 DispatcherServlet的初始化后,它会查找一个文件名servlet-name-servlet.xml Web应用程序的WEB - INF文件夹中。 在这个例子中,该框架将称为文件spring-servlet.xml寻找。 Spring配置文件 The Spring - servlet.xml中创建一个文件在WEB - INF文件夹,并复制到它下面的内容。 文件:WEB-INF/spring-servlet.xml在上面的XML配置文件,我们已经定义了一个标记。 这将允许Spring载
21、入net.viralpatel.spring3.controller从包中的所有组件和它的所有子包。 这将载入我们HelloWorldController类。 另外,我们定义一个bean viewResolver 。 这个bean将解决意见,并添加前缀字符串/ WEB-INF/jsp /以及后缀。JSP在ModelAndView的观点。 请注意,我们已经在我们的HelloWorldController类,返回一个ModelAndView对象的视图名称的”Hello”。 这将是解决路径/ WEB-INF/jsp/hello.jsp。 这是所有Folks 您可能需要运行的应用程序现在看到的结果。
22、我假设你已经在Eclipse中配置Tomcat的。 所有您需要做的: 从”窗口”“显示视图”“服务器打开服务器视图。 在此视图中右键单击并选择New Server,并添加您的服务器的详细信息。 要运行该项目,从Project Explorer中的项目名称上点击右键并选择运行在服务器上运行(快捷键:ALT + SHIFT + X,R ) 下载源代码 点击这里下载源代码(9.05kb) 继续 在本教程中,我们创建了一个小型的Hello World应用程序,使用Spring 3.0 MVC框架。 此外,我们了解了Spring的配置和喜欢不同Controller RequestMapping Requ
23、estMapping的。 在下一篇文章中,我们将看到它是多么容易使用Spring 3.0的MVC来处理表单数据。 Spring3 MVC:在Spring 3.0 MVC的处理形式 Spring3.0 MVC系列的第3部分。 在以前的文章中,我们创建了一个在Spring MVC的Hello World应用程序。 我们俯身如何在web.xml中配置Spring MVC中,如何使用不同的注释,如控制器, RequestMapping的等在这篇文章中,让我们来看看如何处理在Spring 3.0 MVC的形式。我们将利用我们在以前的文章中创建一个基本参考,并添加在它的形式的功能框架。 另外,我们创建的应
24、用程序将是一个联系人管理器应用程序。 我们的目标 我们的目标是创建基本的联系人管理器应用程序。 这个应用程序将有一个表格,从用户的详细联系方式。 现在我们将只打印在日志中的细节。 我们将学习如何捕捉在Spring3 MVC的表单数据。 入门 让我们添加的接触形式,以Spring3 MVC Hello World应用程序。 打开index.jsp文件,并改变它,以下列: 文件的WebContent / index.jsp的 上面的代码将重定向用户contacts.html页。 查看- contact.jsp 创建一个JSP文件,将显示联系表格给我们的用户。 文件:/的WebContent / WEB - INF / JSP / contact.jsp %taglib uri=“http:/www.springfra
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1