1 SpringMVC的概述

  • Spring为展现层提供的基于MVC设计理念的优秀的web框架,是目前最主流的MVC框架之一。
  • Spring3.0后面全面超过Struts2,成为了最优秀的MVC框架。
  • Spring MVC通过一套MVC注解,让POJO成为处理请求的控制器,而无须实现任何接口。
  • 支持REST风格的URL请求。
  • 采用了松散耦合的可插拔组件结构,比其他MVC框架更具有扩展性和灵活性。

2 SpringMVC的HellloWorld

2.1 环境搭建

<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.2.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>5.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>aopalliance</groupId>
<artifactId>aopalliance</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.9.4</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.2.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.2.1.RELEASE</version>
</dependency>

2.2 在web.xml中配置DispatcherServlet

  • web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<!--
配置DispatcherServlet:
DispatcherServlet默认加载的是/WEB-INF/<servlet-name>-Servlet.xml的Spring配置文件,来启动WEB层的Spring容器。
可以通过init-param中的contextConfigLocation来自定义配置文件的位置和名称
-->
<servlet>
<servlet-name>dispatcherServlet</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>dispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping> </web-app>

2.3 创建SpringMVC的配置文件

  • springMVC.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-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/aop
http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-4.0.xsd "> <!-- 配置自动扫描的包 -->
<context:component-scan base-package="com.sunxiaping.springmvc"></context:component-scan> <!-- 配置视图解析器 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/"></property>
<property name="suffix" value=".jsp"></property>
</bean> </beans>

2.4 创建Handler

  • HelloWorldController.java
package com.sunxiaping.springmvc.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; @Controller
public class HelloWorldController { @RequestMapping(value = "/helloWorld")
public String helloWorld() {
System.out.println("你好,世界");
return "success";
} }

2.5 在WEB-INF目录下创建views目录,并在views目录下创建success.jsp

  • success.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
成功啦
</body>
</html>

最新文章

  1. WCF 安全性之 自定义用户名密码验证
  2. 使用diff制作补丁
  3. hadoop2—namenode—HA原理详解
  4. EasyUI-在iframe里获取现阶段选中的tab的标题
  5. Hill Climber and Random Walk
  6. C# winform滚动字幕
  7. [译]GotW #5:Overriding Virtual Functions
  8. android 72 确定取消对话框,单选对话框,多选对话框
  9. wmic
  10. DataTable AsEnumerable 的使用
  11. PHP通过Thrift操作Hbase
  12. 实例讲解webpack的基本使用第一篇
  13. 在centos7中手动编译greenplum
  14. Spring3 MVC
  15. Java判断对象是否为NULL
  16. android MeasureSpec的三个测量模式
  17. Java异常封装
  18. [转] Centos 系统swap虚拟内存添加与删除配置
  19. jmeter 打不开 提示“Not able to find Java executable or version”的解决办法
  20. 五、设置 IntelliJ IDEA 主题和字体的方法

热门文章

  1. CentOS7环境下yum方式安装MySQL5.7
  2. java 接口default的判断规则
  3. Java基础/网络经验
  4. HTML简单介绍(个人角度)
  5. CSS基本样式-文本属性
  6. MySQL-线上数据迁移实战记录
  7. 小记---------Elasticsear搭建
  8. &lt;&lt;C++ Primer&gt;&gt; 第四章 表达式
  9. 實現QQ第三方登錄
  10. js中this.index使用