Spring Web MVC基础的一个小实例
来源:互联网 发布:php 上传工具 编辑:程序博客网 时间:2024/06/01 10:51
简介
- Spring 提供了一个Web MVC框架,便于开发MVC结构的Java Web程序。
- Spring MVC框架控制器为DispatcherServlet,DispatcherServlet负责接收请求,然后将请求分发到不同的处理器进行业务处理,最后由控制器完成转发动作。
- Spring Web MVC提供了M、V和C相关的实现,主要实现组件如下:
– DispatcherServlet(控制器,请求入口)
– HandlerMapping(控制器,请求派发)
– Controller(控制器,请求处理流程)
– ModelAndView(模型,封装处理结果和视图)
– ViewResolver(视图,视图显示处理器) - Spring Web MVC的主要处理流程如下:
应用
- 搭建Spring Web MVC环境的步骤如下:
- 创建web项目工程
- 添加ioc和webmvc开发包
- 添加Spring配置文件applicationContext.xml
- 在web.xml和applicaationContext.xml中分别配置
简单实例
首先创建一个动态web工程
创建完成之后,默认不提供web.xml,这时我们需要右击Deployment Descriptor:SpringWebMVC,然后点击Generate Deployment Descriptor Stub,即可生成web.xml;但是如果在创建时选择了版本(亲测3.0以下都可以),那么就可以不用考虑这一步
导入相关jar包和配置文件的模板:
- 导入与IOC相关、与webmvc相关的jar包
- 再添加applicationContext.xml文件,放入Java Resources中的src目录下即可
- 设计流程
开始配置
在web.xml中配置DispatcherServlet
<servlet><servlet-name>SpringWebMVC</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value></init-param></servlet><servlet-mapping><servlet-name>SpringWebMVC</servlet-name><url-pattern>*.do</url-pattern></servlet-mapping>
在applicationContext.xml中配置HandlerMapping、ViewResolver
<!-- 定义HelloController --><bean id="HelloController" class="com.ll.HelloController"></bean><!-- SpringWebMVC --><!-- 定义HandlerMapping --><bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <!-- <prop key="请求">Controller的id</prop> --> <prop key="hello.do">HelloController</prop> </props> </property></bean><!-- 定义viewResolver --><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/jsp/"></property> <property name="suffix" value=".jsp"></property></bean>
开始编辑Controller(HelloController.java)
package com.ll;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.web.servlet.ModelAndView;import org.springframework.web.servlet.mvc.Controller;public class HelloController implements Controller{ @Override public ModelAndView handleRequest(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception { ModelAndView mav = new ModelAndView(); mav.setViewName("hello"); return mav; }}
注意:默认工程没有Apache Tomcat服务,因此需要自己添加这一个Library,具体添加过程 : 右击SpringWebMVC工程名 =》左击Build Path =》 左击Configure Build Path =》 找到Libararies =》点击Add Library =》 选择Server Runtime =》 选择Apache下的Apache Tomcat v7.0 =》 点击Apply =》 最后点击ok完成
编辑View视图(hello.jsp)
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> Hello Spring Web MVC! </body> </html>
测试程序
首先将我们的项目添加到tomcat服务器上- 打开Servers控制台:最上面找到Window =》Show View =》找到Server(如果未找到就继续往下) =》 Other =》 Server =》 Servers。
- 创建一个Tomcat的Server:在Servers控制台中右键 =》 New =》 Server =》 找到Apache =》 选择Tomcat版本(本实例使用Tomcat v7.0 Server) =》 Next =》 选择左边框中我们需要添加的工程SpringWebMVC =》 点击中间位置的Add =》 点击Finish。
发布工程到Tomcat服务器中
- 右键点击Servers中的Tomcat v7.0 Server at localhost =》 Publish
启动Tomcat服务器
- 右键点击Servers中的Tomcat v7.0 Server at localhost =》 Start
在网页输入请求测试程序
- Tomcat的服务器端口默认是8080
请求格式:http://主机ip:Tomcat端口/工程名称/请求
本次请求:http://localhost:8080/SpringWebMVC/hello.do
页面显示结果
- Spring Web MVC基础的一个小实例
- spring web mvc 的一个简单实例
- 一个简单的spring mvc实例
- Spring MVC一个简单的实例
- 一个Spring MVC简单的登录小实例(不带数据库)
- Spring基础小实例
- Spring Web MVC 入门实例
- spring mvc的搭建实例,自己写的小例子
- web前端的MVC——一个实例讲解
- mvc的一个实例
- 一个很简单的Spring MVC 入门实例
- 一个在JSP页面输出“HelloWorld”的Spring MVC实例
- 一个基于java web+spring mvc+mysql+maven的helloworld
- Spring MVC (6) spring MVC 写一个增删改查的小项目
- Spring MVC Web简单入门实例
- MVC 实现的小实例
- Django创建的一个web小实例讲解
- Java Web系列:Spring MVC基础
- 设计模式之单例模式
- 使用Spring的@Scheduled实现定时任务
- MyEclipse破解版+tomcat安装+jdk
- [Python 爬虫之路4] 使用selenium爬取知乎任意一个问题下,所有回答中的图片
- Android TextView 添加下划线的几种方式
- Spring Web MVC基础的一个小实例
- 详解google Chrome浏览器(理论篇)
- Android框架/系统服务是怎样管理第三方Search数据源的?
- 《趣学Python编程》笔记---第一部分:学习编程(2)
- Activiry的启动模式
- int、integer比较。。。。
- 关于面试跳槽之类的
- 牛客模拟一:连续整数
- 什么时候使用CountDownLatch