关于SpringMVC的简介

A.SpringMVC概述

  作用:

    SpringMVC框架是SpringFramWork中实现了MVC架构模式的轻量级子框架

    用于将WEB层进行职责解耦,松散的耦合可插拔组件结构,
    比其他的MVC框架有更强的扩展性和灵活性

  优点:
    简介的MVC设计
    与Spring框架的无缝集合
    灵活的URL映射
    丰富的视图(字符串,对象,转发,重定向,json,xml,图片...)支持

B.新建一个SpringMVC项目

    

HelloController.java

package com.stu.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; /**
* 文件名称: com.stu.controller.HelloController.java<br/>
* 初始作者: Administrator<br/>
* 创建日期: 2018-2-5<br/>
* 功能说明: 新建一个Controller控制器 <br/>
* =================================================<br/>
* 修改记录:<br/>
* 修改作者 日期 修改内容<br/>
* ================================================<br/>
* Copyright (c) 2010-2011 .All rights reserved.<br/>
*/
// @Controller注解:使得一个普通的POJO(Plain Old Java Object,没有实现过任何接口或继承过任何类的Java对象)类成为一个控制器。
@Controller
// @RequestMapping注解:用来指定请求的映射路径,可以加在类前面,也可以加在方法前面
// 例如在类前面加上@RequestMapping("/hello") 表示通过/hello能够访问到HelloController这个类
// 对于不同的Controller类,类前面的@RequestMapping对应的映射路径不要重复!
@RequestMapping("/hello")
public class HelloController { @RequestMapping("/demoForHello")
// 说明该方法的访问路径是/hello/demoForHello
// 即在hello注解中的demoForHello注解的方法
public String helloPage() {
//返回的为视图名,前缀+返回值+后缀名=最后 跳转/转发 路径
return "Hello";
}
}

通过浏览器地址栏访问容器地址:http://127.0.0.1:7070/SpringMVCDemo/hello/demoForHello  则会根据返回的 “Hello" 匹配相应的界面。

前缀和后缀在SpringMVC-servlet.xml中配置

    <!--
注解扫描器 ,base-package用于指定要扫描的包的路径
当前配置用来扫描com.niit.controller包及其子包下所有的类,所有含@Controller注解的类就会成为一个控制器类(就有了处理请求和返回响应的能力)
另外被@Controller注解标记的类也会成为Spring IOC 容器中被管理的一个对象
-->
<context:component-scan base-package="com.stu.controller"></context:component-scan> <!-- 视图解析器 -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!-- 前缀 -->
<property name="prefix" value="/WEB-INF/"></property>
<!-- 后缀 -->
<property name="suffix" value=".jsp"></property>
</bean> <!-- 不拦截静态资源 -->
<mvc:annotation-driven></mvc:annotation-driven>
<mvc:default-servlet-handler />

编辑一个 Hello.jsp 文件,文件名和方法返回值大小写一致。

并且在web.xml中添加如下配置信息

<!-- SpringMVC的中央控制器 -->
<servlet>
<servlet-name>springMVC</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!--
也可以通过修改Servlet的初始化参数来指定要加载的SpringMVC配置文件所在的路径
-->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/config/springMVC-servlet.xml</param-value>
<!-- 从类路径加载 -->
<!--<param-value>classpath:applicationContext.xml</param-value>-->
</init-param>
<!--页面加载时开始加载-->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springMVC</servlet-name>
<!--
/* 拦截的是所有的路径,如果直接访问jsp,那么不可能存在以/***/***.jsp为路径的控制器 如果访问/hello/hello01
那么在转发过程中依然跳转到.jsp路径,和前面的场景一样是错误的
-->
<!--
/ 只会拦截路径型请求,例如 /hello/hello01 不会拦截后缀型请求,例如jsp
但是会拦截纯静态资源,例如css、js、图片之类 如果要纯静态资源能够被正常加载,那么需要在Spring配置文件中加上:
<mvc:annotation-driven/> <mvc:default-servlet-handler/>
-->
<url-pattern>/</url-pattern>
</servlet-mapping>

添加到Tomcat容器中,用浏览器进行访问结果如下

    

[SpringMVC-初始] 初始SpringMVC的更多相关文章

  1. springmvc DispatchServlet初始化九大加载策略(一)

    由于篇幅较长,因此分三篇进行讲解: springmvc DispatchServlet初始化九大加载策略(一) springmvc DispatchServlet初始化九大加载策略(二) spring ...

  2. springMvc入门--初识springMvc

    springMvc是什么 springmvc是表现层的框架,是一个spring的表现层组件.是整个spring框架的一部分,但是也可以不使用springmvc.跟struts2框架功能类似.其中的mv ...

  3. springMVC学习(3)-springMVC和mybatis整合

    一.需求:使用springmvc和mybatis完成商品列表查询. 二.整合思路:springMVC+mybaits的系统架构: 1步):整合dao层 mybatis和spring整合,通过sprin ...

  4. (转)SpringMVC学习(六)——SpringMVC高级参数绑定与@RequestMapping注解

    http://blog.csdn.net/yerenyuan_pku/article/details/72511749 高级参数绑定 现在进入SpringMVC高级参数绑定的学习,本文所有案例代码的编 ...

  5. (转)SpringMVC学习(三)——SpringMVC的配置文件

    http://blog.csdn.net/yerenyuan_pku/article/details/72231527 读者阅读过SpringMVC学习(一)——SpringMVC介绍与入门这篇文章后 ...

  6. (转)SpringMVC学习(一)——SpringMVC介绍与入门

    http://blog.csdn.net/yerenyuan_pku/article/details/72231272 SpringMVC介绍 SpringMVC是什么? SpringMVC和Stru ...

  7. 初探SpringMVC,走进SpringMVC的世界

    1.Springmvc入门 1.1.Springmvc是什么 SpringMVC是Spring中的一个组件,目前(2019)在互联网公司用的很多,是必需学习的一门框架技术!SpringMVC用于web ...

  8. SpringMVC 01: SpringMVC + 第一个SpringMVC项目

    SpringMVC SpringMVC概述: 是基于MVC开发模式的框架,用来优化控制器 是Spring家族的一员,也具备IOC和AOP 什么是MVC: 它是一种开发模式,是模型视图控制器的简称,所有 ...

  9. SpringMVC的初始

    1:其实一开始对SSH和SSM并不是很熟悉的,对SSH可能熟悉些(Struts,Spring,Hibernate)这三个框架.但是由于框架的更新,和出现了更好的框架,一些老框架就被淘汰了,但是呢,一些 ...

  10. springmvc DispatchServlet初始化九大加载策略(三)

    7. initRequestToViewNameTranslator 请求视图名 它主要与视图解析有关,如果对ViewResolvers.ModelAndView.View等没有多大印象,可以先看第8 ...

随机推荐

  1. asyncio创建协程解析——分析廖雪峰的Python教程之创建WEB服务(转)

    第一步,搭建开发环境 所需第三方库: aiohttp,异步 Web 开发框架:jinja2,前端模板引擎:aiomysql,异步 mysql 数据库驱动 所需内置库: logging,系统日志:asy ...

  2. Raspbian安装Opencv3

    如果旧版本使用apt-get安装 sudo apt-get remove libopencv sudo apt-get remove opencv 如果旧版本使用编译安装 sudo make unin ...

  3. JUnit 4.0学习笔记

    JUnit命令整理 @Test(timeout=  ) : 测试时间超过范围即失败 @Test(expected=) : 申明出会发生的异常 @Before :  在每一个测试方法前执行 @After ...

  4. SWUST OJ(953)

    单链表的删除操作的实现 #include <stdio.h> #include <stdlib.h> typedef struct LinkNode //单链表节点结构的定义 ...

  5. 2015-2016 ACM-ICPC Northeastern European Regional Contest (NEERC 15)C - Cactus Jubilee

    题意:给一颗仙人掌,要求移动一条边,不能放在原处,移动之后还是一颗仙人掌的方案数(仙人掌:无向图,每条边只在一个环中),等价于先删除一条边,然后加一条边 题解:对于一颗仙人掌,分成两种边,1:环边:环 ...

  6. pyqt5安装命令

    第一步:安装qt5 pip install pyqt5==5.10.1 -i https://pypi.doubanio.com/simple pip install pyqt5-tools -i h ...

  7. MySql习题和答案

    MySQL测试题 一.表关系请创建如下表,并创建相关约束 二.操作表 1.自行创建测试数据 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号.ps:针对的是自己的生物成绩比物理成绩高,再把符合 ...

  8. 绘图之EasyUI+Highcharts+Django

    前言: 在web开发过程中经常会出现图表展示数据的业务需求,如何把数据通过图表的形式,展示在页面上呢?本文将结合EasyUI.Highcharts.Django做一个简单的图表展示web应用: 一.E ...

  9. weblogic查看版本号教程

    1.查看软件版本号 cd /weblogic/bea/wlserver_10.3/server/lib java -cp weblogic.jar weblogic.version 说明:版本号后边的 ...

  10. qq远程连接/windows远程桌面/teamviwer/xmanager/vnc的区别

    软件 客户端运行平台 服务端运行平台 服务端是否需要同子网或公网IP 网络断开当前执行命令是否会中止 评价 QQ远程连接 windows windows 否 否 感觉用了一两分钟就动不了了 windo ...