springMVC例子.docx_第1页
springMVC例子.docx_第2页
springMVC例子.docx_第3页
springMVC例子.docx_第4页
springMVC例子.docx_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

同Struts 2框架一样,Spring也可以给Web开发者提供一个MVC框架。虽然Web框架只是Spring的一个模块,但是它却应用的非常广泛。本章结合实例分析Spring Web框架的使用方法、各个组件的作用通过本章的学习,相信读者会对如何使用Spring进行MVC开发有很深入的了解。第一个Spring MVC例子【示例】该示例先讲解如何在Eclipse环境下实现Spring MVC框架,然后讲解如何在Ant环境下实现。在Eclipse中创建一个工程SpringMVC,然后按照下面的步骤添加文件。1 配置web.xml文件在Spring MVC的WEB-INF目录下创建web.xml。在使用Struts 2时,需要在web.xml文件配置FilterDispatcher,在使用Spring的MVC框架时,也需要配置web.xml文件,代码如下。dispatcherServletorg.springframework.web.servlet.DispatcherServletdispatcherServlet*.do上面的代码对DispatcherServlet类进行配置,所有后缀名为.do的请求都会被DispatcherServlet处理。2 编写用于输出的页面在ch23文件夹下面创建sayHello.jsp,该页面用来被Spring的控制器调用向页面上输出一个字符串,代码如下:第一个Spring MVC实例您输入的欢迎语是可以看出,上面的代码很简单,就是从请求中获得helloWorld参数的值,然后把它输出到界面上。3 创建控制器Spring的MVC框架也有充当控制器的组件。下面先在ch23中创建一个package:com.examp.ch23,然后在其中添加HelloWorldAction.Java类,用于调用sayHello.jsp去显示字符串,代码如下:package com.examp.ch23;import Java.io.IOException;.public class HelloWorldAction implements Controller /控制器需要实现Controller接口private Logger logger = Logger.getLogger(this.getClass().getName();private String helloWorld; /该属性用于获取配置文件中的helloWorld属性private String viewPage; /用于获取配置文件中的viewPage属性public ModelAndView handleRequest(HttpServletRequest req, HttpServlet-Response res)throws ServletException, IOException /在该方法中处理用户请求Map model = new HashMap();model.put(helloWorld, getHelloWorld(); /将helloWorld属性存 入model中return new ModelAndView(getViewPage(),model); /调用getViewPage获 取要返回的页面public void setViewPage(String viewPage)this.viewPage = viewPage;public String getViewPage()return this.viewPage;public void setHelloWorld(String helloWorld)this.helloWorld = helloWorld;public String getHelloWorld()return this.helloWorld;可以看出,上面的HelloWorldAction类实现了Controller接口。该类有两个属性viewPage和helloWorld。viewPage代表处理完后要返回的页面,helloWorld是要传给显示页面的参数。在handleRequest()方法中进行客户端请求的处理时,首先将参数helloWorld放在Map类型的变量model中,然后调用viewPage显示该参数。4 创建Spring的配置文件在前面讲Struts 2时,配置文件struts.xml主要用来对Action类进行配置,下面看Spring的配置文件是如何配置的。在Spring的WEB-INF下面编写文件dispatcherServlet-servlet.xml,代码如下:helloWorldActionorg.springframework.web.servlet.view.InternalResource-ViewHello Spring World!sayHello.jsp-上面代码中通过标签来实现对控制器以及视图的配置,用指定控制器的实现类是com.examp.ch23.HelloWorldAction,并且用helloWorldAction来唯一标识该控 制器。-用代码helloWorldAction为HelloWorldAction建立映射,其中helloWorldAction就是HelloWorldAction类的id,helloWorld.do为访问HelloWorldAction的URL。在浏览器中输入http:/localhost:8080/ch23/helloWorld.do,就可以访问到HelloWorldAction类。- Hello Spring World!用来给HelloWorldAction类的属性helloWorld赋值,sayHello.jsp用来给其viewPage属性赋值,这样在HelloWorldAction类中才能获取它们。- id为viewResolver的bean用来定义视图解析器。5 运行Spring MVC示例在Eclipse中启动Tomcat,在浏览器中输入http:/localhost:8080/ch23/helloWorld.do,可以访问到sayHello.jsp,效果如图所示。helloWorld.do访问效果图说明:通过这个例子可以看出,Spring的MVC框架和Struts2框架有很多的相似之处,例如,它们都要配置web.xml文件、实行控制器、配置控制器。当然它们也有很多不同之处,将在下面的几章里讲解。6 使用JSTL视图技术JSTL(JSP Standard Tag Library,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,是由apache的jakarta小组来维护的。使用JSTL可以实现迭代和条件判断、数据管理格式化、XML操作以及数据库访问等操作。可以使用JSTL技术去实现sayHello.jsp。【示例】该实例讲解如何在JSP文件中使用JSTL技术。在Eclipse中将sayHello.jsp的代码改为如下所示的代码:第一个Spring MVC实例您输入的欢迎语是$helloWorld然后把配置文件修改为如下代码:helloWorldActionHello Spring World!sayHello在Eclipse中右击Spring MVC,在弹出的快捷菜单中选择Properties命令,弹出Properties for myApp对话框,在该对话框的左侧选择Java Build Path选项,然后选择上方的Source选项卡。单击右侧的“Add Folder”按钮,在弹出的对话框中选择WEB-INF下面的classes文件夹并保存。然后在WEB-INF/classes目录下创建perties文件,代码如下:sayHelloView.class=org.springframework.web.servlet.view.JstlViewsayHelloView.url=sayHello.jsp然后将spring-framework-2.0-m1/lib/j2ee文件夹下的jstl.jar和spring-framework-2.0-m1/lib/ jakarka-taglibs文件夹下面的standard.jar复制到WEB-INF/lib目录下。在Eclipse中重启Tomcat,然后访问http:/localhost:8080/ch23/helloWorld.do。可以看到输出的效果与前面一样。7 使用Ant实现这个例子除了在Eclipse环境下开发这个例子外,还可以使用Ant开发,这两种方式读者都必须 掌握。【示例】此例子讲解如何使用Ant开发这个例子。7.1 创建目录结构复制光盘中的工程模版文件夹ProjectTemplate,命名为ch23,可以看到其目录结构如图23-2所示。将图中“$更改为项目名”的文件夹重命名为ch23。7.2 复制文件Eclipse workspace中ch23文件夹的结构如图23-3所示。图23-2 ch23目录结构示意图 图23-3 Eclipse ch23目录结构示意图将该文件夹下必要的文件复制到重命名后的文件夹ch23中。- 将当前目录下的sayHello.jsp复制到ch23srcwebjsp下。- 将WEB-INF下的web.xml复制到ch23configservicesWEB-INF下,覆盖原来的web.xml。- 将WEB-INF下的dispatcherServlet-servlet.xml复制到ch23configspring下。- 将WEB-INFclasses下的perties复制到ch23configspringclasses下。- 将WEB-INFlib下的所有jar文件复制到ch23configservicesWEB-INFlib下。- 将WEB-INFsrccomexampch23下的所有Java文件复制到ch23srcJavacom exampch23下面。7.3 修改配置文件把一些文件的配置进行如下修改。- 打开ch23下的perties文件,修改为tomcat.home=%TOMCAT_HOME%。- 打开ch23configb

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论