springMVC入门教程

介绍什么是springMVC之前我们先看一下spring的基本架构,如下图
springMVC入门教程
不多说 我们先以一个小案例的方式进行springMVC的入门

  1. 打开Eclipse创建一个springMvc的一个web项目

springMVC入门教程
导入jar包
springMVC入门教程
2.配置前端控制器`

<servlet>
    <servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <!-- 对应上一步创建全局配置文件的文件名以及目录 -->
        <param-value>classpath:springmvc.xml</param-value>
    </init-param>
  </servlet>
 
  <servlet-mapping>
    <servlet-name>springmvc</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>

3.配置handler

<bean name="/hello.do" class="org.vector.controller.HelloController" />

4.配置处理器映射器

<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />
   <!-- 配置处理器适配器,所有适配器都得实现 HandlerAdapter接口 -->
   <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />

5.配置视图解析器

进行jsp解析,默认使用jstl标签,classpath下得有jstl的包--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" />

6.编写controller

package org.vector.controller;


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 request, HttpServletResponse response) throws Exception {
		
		//		创建modelandView 对象
		ModelAndView modelAndView = new ModelAndView();
//		相当于request.setAttribute(arg0, arg1);
		modelAndView.addObject("name","张三");
//		返回数据到视图层
		modelAndView.setViewName("/jsp/index.jsp");
		return modelAndView;
	}
}

6.编写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:${name}
</body>

8.打开浏览器访问你的controller