简单的SpringMVC经典案例

Posted 一生的力量

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单的SpringMVC经典案例相关的知识,希望对你有一定的参考价值。

主题:构建一个基于SpringMVC的HelloWord Web 项目

目的:快速体验什么是SpringMVC

方案

  1、创建工程,命名:SpringMVC

  技术分享

  2、导包

  技术分享

  3、在SRC下添加spring-mvc.xml配置文件

   (注意:名字可以随便取,最好就是看上就知道是什么)

  技术分享

  

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
               http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
               http://www.springframework.org/schema/context
               http://www.springframework.org/schema/context/spring-context-4.0.xsd
               http://www.springframework.org/schema/tx
               http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
               http://www.springframework.org/schema/aop
               http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
               http://www.springframework.org/schema/mvc
                http://www.springframework.org/schema/mvc/spring-mvc.xsd">


</beans>

 

  4、在web.xml配置封装在Spring里面的servlet--DispatcherServlet前端控制器,并指定spring-mvc.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>SpringMVC</display-name>
  <servlet>
      <servlet-name>SpringMVC</servlet-name>
      <!-- DispathcherServlet 前端控制器 -->
      <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
      <init-param>
          <!-- 变量名随便取 -->
          <param-name>contextConfigLocation</param-name>
          <!-- 指定SpringMVC配置文件名 -->
          <param-value>classpath:spring-mvc.xml</param-value>
      </init-param>
      <!-- load-on-startup等于1,则表示容器启动就实例化此Servlet -->
    <load-on-startup>1</load-on-startup>      
  </servlet>
  <servlet-mapping>
      <!-- 要与上面Servlet的名字对应 -->
      <servlet-name>SpringMVC</servlet-name>
      <!-- 用来匹配客户端请求 -->
      <url-pattern>*.action</url-pattern>
  </servlet-mapping>
</web-app>

 

  5、在spring-mvc.xml中配置 【HandlerMapping组件】------------------作用------>设置客户端请求与Controller

                       【InternalResourceViewResolver组件】--作用------>设置视图配置

                                               【HelloController】------------------------作用------->测试请求处理

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
               http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
               http://www.springframework.org/schema/context
               http://www.springframework.org/schema/context/spring-context-4.0.xsd
               http://www.springframework.org/schema/tx
               http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
               http://www.springframework.org/schema/aop
               http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
               http://www.springframework.org/schema/mvc
                http://www.springframework.org/schema/mvc/spring-mvc.xsd">

    <!-- 定义客户端请求映射关系 -->
    <!-- HeanlerMapping是Spring核心组件之一 -->
    <bean id="headlerMapping" 
          class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
         <property name="mappings">
             <map>
                 <entry key="/hello.action">
                     <value>helloController</value>
                 </entry>
             </map>
         </property>
    </bean>
    
    <!-- 增加HelloController的Bean -->
    <bean id="helloController" class="controller.HelloController" />
    
    <!-- 定义视图解释器(Spring核心组件之一) -->
    <bean id="viewResolver" 
          class="org.springframework.web.servlet.view.InternalResourceViewResolver">
          <property name="prefix" value="WEB-INF/jsp/"/>
          <property name="suffix" value=".jsp"/>
    </bean>
</beans>

 

  6、编写HelloController【注意:需要实现Controller接口】

package 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 arg0, HttpServletResponse arg1) throws Exception {
        ModelAndView mv = new ModelAndView("hello");
        System.out.println("处理hello.action请求");
        return mv;
    }
    
}

  7、在WEB-INF文件夹下新增"jsp"文件夹,并添加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>
    欢迎来到Spring的世界!
</body>
</html>

  8、跑起来吧兄弟们~然后访问http://localhost/SpringMVC/hello.action,效果如下:

  技术分享

  技术分享

 

以上是关于简单的SpringMVC经典案例的主要内容,如果未能解决你的问题,请参考以下文章

SpringMVC第二课 SpringMVC框架的简单使用

Springday04 SpringMVC入门案例控制器和三大主件Spring请求参数绑定SpringMVC使用servlet的api请求头请求体相关注解

SpringMVC学习02走进SpringMVC的世界

求springmvc导入导出Excel的例子,越全面越好。

mybatis使用全注解的方式案例(包含一对多关系映射)

SpringMVC--11 Restful开发风格