[SpringMVC-初始] 初始SpringMVC
关于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的更多相关文章
- springmvc DispatchServlet初始化九大加载策略(一)
由于篇幅较长,因此分三篇进行讲解: springmvc DispatchServlet初始化九大加载策略(一) springmvc DispatchServlet初始化九大加载策略(二) spring ...
- springMvc入门--初识springMvc
springMvc是什么 springmvc是表现层的框架,是一个spring的表现层组件.是整个spring框架的一部分,但是也可以不使用springmvc.跟struts2框架功能类似.其中的mv ...
- springMVC学习(3)-springMVC和mybatis整合
一.需求:使用springmvc和mybatis完成商品列表查询. 二.整合思路:springMVC+mybaits的系统架构: 1步):整合dao层 mybatis和spring整合,通过sprin ...
- (转)SpringMVC学习(六)——SpringMVC高级参数绑定与@RequestMapping注解
http://blog.csdn.net/yerenyuan_pku/article/details/72511749 高级参数绑定 现在进入SpringMVC高级参数绑定的学习,本文所有案例代码的编 ...
- (转)SpringMVC学习(三)——SpringMVC的配置文件
http://blog.csdn.net/yerenyuan_pku/article/details/72231527 读者阅读过SpringMVC学习(一)——SpringMVC介绍与入门这篇文章后 ...
- (转)SpringMVC学习(一)——SpringMVC介绍与入门
http://blog.csdn.net/yerenyuan_pku/article/details/72231272 SpringMVC介绍 SpringMVC是什么? SpringMVC和Stru ...
- 初探SpringMVC,走进SpringMVC的世界
1.Springmvc入门 1.1.Springmvc是什么 SpringMVC是Spring中的一个组件,目前(2019)在互联网公司用的很多,是必需学习的一门框架技术!SpringMVC用于web ...
- SpringMVC 01: SpringMVC + 第一个SpringMVC项目
SpringMVC SpringMVC概述: 是基于MVC开发模式的框架,用来优化控制器 是Spring家族的一员,也具备IOC和AOP 什么是MVC: 它是一种开发模式,是模型视图控制器的简称,所有 ...
- SpringMVC的初始
1:其实一开始对SSH和SSM并不是很熟悉的,对SSH可能熟悉些(Struts,Spring,Hibernate)这三个框架.但是由于框架的更新,和出现了更好的框架,一些老框架就被淘汰了,但是呢,一些 ...
- springmvc DispatchServlet初始化九大加载策略(三)
7. initRequestToViewNameTranslator 请求视图名 它主要与视图解析有关,如果对ViewResolvers.ModelAndView.View等没有多大印象,可以先看第8 ...
随机推荐
- LOJ6036编码
每个串拆成两个,都插入trie数. 把trie树建出来后,每一条从根到叶子的链上最多只能有一个变量为1. 这是个经典的前后缀优化2-sat建图的套路. 树上的做法也就是边dfs边做而已. #inclu ...
- JUnit 4.0学习笔记
JUnit命令整理 @Test(timeout= ) : 测试时间超过范围即失败 @Test(expected=) : 申明出会发生的异常 @Before : 在每一个测试方法前执行 @After ...
- pyqt5安装命令
第一步:安装qt5 pip install pyqt5==5.10.1 -i https://pypi.doubanio.com/simple pip install pyqt5-tools -i h ...
- MySQL主从同步最佳实践
#!/bin/bash export master_ip=192.168.7.206 export slave_ip=192.168.7.207 export root_passwd=123456 ...
- nginx开启fileinfo扩展
//实现网址 https://blog.csdn.net/m_nanle_xiaobudiu/article/details/80838424 (1) (2).make && make ...
- 2017-3-29/HTTP协议1
1. 讲讲你对http的理解. HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传输协议,是一个客户端和服务器端请求和 ...
- 连接zookeeper+solr的服务器超时
在连接zookeeper+solr的服务器超时,如果检查各ip地址都没有变动,各部分工程也没有书写问题,那么连接超时,就可能是该服务器内存分配过少,性能不足的问题,扩大该服务器内存即可.
- Qt Widgets——主窗口及其主要组成部分
Main Window and Related Classes QAction 动作类,用于当做一个菜单项或工具项插入菜单或工具栏 QActionGroup 动作组,用于管理多个动作,设置它们之间的互 ...
- 使用Java实现面向对象编程
使用Java实现面向对象编程 源码展示: package cdjj.s2t075.com; import java.util.Scanner; public class Door { /* * Doo ...
- api资源
转:https://blog.csdn.net/qq_37187976/article/details/79160050