1.SpringMVC 概述
SpringMVC 简介
SpringMVC 也叫 Spring web mvc ,属于表现层的框架。SpringMVC 是 Spring框架的一部分,是在Spring3.0后发布的
第一个SpringMVC 程序
1.导入jar包
2.注册中央调度器
a)<load-on-startup/> 值大于等于0时,表示这个servlet随服务器启动
b)<url-pattern/> 不能写为 /*,最好也不要写为 /,建议写为 *.do的形式
/* 所有的请求都拦截下来,JSP页面的跳转也会拦截下来,此时是没有对应的处理器的,会报404
/ 无法对静态资源进行访问
c) 配置文件与名称(这里必须要设置一下,不然会根据servlet的name 生成不同的文件名称,然后去找这个文件)
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc.xml</param-value>
</init-param>
3.创建SpringMVC配置文件(springmvc.xml)
4.定义处理器
public class MyController implements Controller {
@Override
public ModelAndView handleRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception {
System.out.println("1");
ModelAndView mv = new ModelAndView();
//这句话相当于request.setAttribute
mv.addObject("message", "Hello SpringMVC!");
//mv.setViewName("/WEB-INF/jsp/hello.jsp");
//在对视图解析器进行修改之后,视图名就可以这样写
mv.setViewName("hello");
return mv;
}
}
1.需实现Controller 接口,Struts2也是一样,Acrion也要继承ActionSupport
2.ModelAndView 类中的addObject() 方法用于向其Model中添加数据。Model底层为一个Map
5.注册处理器
定义了自己的处理器后,需要在springmvc.xml中注册,
处理器的id属性值为请求uri,当客户端提交该请求时,会访问class指定的这个处理器,默认调用 handleResult方法
<!-- 注意,这里 bean 的 id 一定要加上 '/' 不能是 hello.do -->
<bean id="/hello.do" class="com.springmvc.handlers.MyController"/>
6.定义目标页面
7.修改视图解析器的注册
<!-- 配置视图解析器 -->
<!-- 字符串拼接 出 访问的 web 资源 ,但是并不好用-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
8.修改处理器
//mv.setViewName("/WEB-INF/jsp/hello.jsp");
//在对视图解析器进行修改之后,视图名就可以这样写
mv.setViewName("hello");
1.SpringMVC 概述的更多相关文章
- SpringMVC系列(一)SpringMVC概述和搭建SpringMVC的第一个helloWord入门程序
一.SpringMVC 概述 • Spring为展现层提供的基于MVC设计理念的优秀的Web框架,是目前最主流的MVC框架之一 • Spring3.0 后全面超越 Struts2,成为最优秀的 MVC ...
- SpringMVC听课笔记(一:SpringMVC概述)
地址 :https://www.bilibili.com/video/av14907450 版本:4.x 概述: 概要: 一:SpringMVC概述 二:SpringMVC的 HelloWorld 三 ...
- SpringMVC 概述
1. SpringMVC 概述 1) Spring 为展现层提供的基于 MVC 设计理念的优秀的 Web 框架,是目前最主流的MVC 框架之一 .MVC,M:model,模型层,指的是项目中的实体Ja ...
- SpringMVC——概述
Spring 为展现层提供的基于 MVC 设计理念的优秀的Web 框架,是目前最主流的 MVC 框架之一 Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架 Spring MV ...
- SpringMVC(一) SpringMVC概述
SpringMVC为展现层提供的基于MVC设计理念的优秀的WEB框架,是目前主流的MVC框架之一.Spring 3.0之后,超越Struts2成为最优秀的MVC框架. SpringMVC通过一套MVC ...
- SpringMVC概述
1. SpringMVC是什么 SpringMVC 是 Spring 框架内置的 MVC 的实现.SpringMVC 就是一个 Spring 内置的 MVC 子框架 Spring 子框架:意味着 Sp ...
- springmvc概述及框架原理
一. 前言 MVC不是框架而是一种设计模式. MVC的全名Model View Controller,即模型-视图-控制器的缩写,这是一种设计模式,而非架构.MVC它强制的使用应用程序的输入.处理.和 ...
- SpringMVC—概述
mvc容器的实例化: http://blog.csdn.net/lin_shi_cheng/article/details/50686876 Spring的启动过程: 1: 对于一个web应用,其部署 ...
- 阶段3 3.SpringMVC·_01.SpringMVC概述及入门案例_05.入门程序之入门代码编写
先把默认的index.jsp删掉.默认的index.jsp没有jsp的声明 ok webapp文件夹下new一个 起名叫做index.新建的页面有jsp的头 创建控制器类 java下新建一个class ...
随机推荐
- 使用浏览器连接Linux服务器
wssh 可以让我们通过 HTTP 来调用远程的一个 shell,也就是说我们可以用浏览器来访问某个 Linux 服务器/虚拟机的终端(只要这个服务器上运行了 wsshd 服务器端).wssh 客户端 ...
- JAVA 基础编程练习题20 【程序 20 求前 20 项之和】
20 [程序 20 求前 20 项之和] 题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前 20 项之和. 程序分析:请抓住分子与分母的变化规律. pac ...
- jeecg启动报错“com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.”的解决办法
在运行"maven build"-->"tomcat:run"之后,报如下错误: com.mysql.jdbc.exceptions.jdbc4.MySQ ...
- JS_&&||
&& 且 当第一个参数为flase 就懒惰了,后面那个无视了,当第一个参数为ture,再去贪婪:|| 或 当第一个参数为flase 就贪婪了,继续找和面个了,当第一个参数为ture,就 ...
- 齐治堡垒机前台远程命令执行漏洞(CNVD-2019-20835)分析
一.基本信息 漏洞公告:https://www.cnvd.org.cn/flaw/show/1632201 补丁信息:该漏洞的修复补丁已发布,如果客户尚未修复该补丁,可联系齐治科技的技术支持人员获得具 ...
- Centos7下 升级php5.4到7.1 yum安装
1.查看当前 PHP 版本 php -v 查看当前 PHP 相关的安装包,删除之 yum list installed | grep php yum remove php yum remove php ...
- bootstrap基础学习【菜单、按钮、导航】(四)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- zabbix监控mysql主从同步和延迟
https://blog.csdn.net/natmazz/article/details/90581490 https://www.cnblogs.com/01-single/p/10602610. ...
- base64转码java版
package com.net.util; import java.io.FileInputStream; import java.io.FileOutputStream; import java.i ...
- Nginx部署前后端分离的单页应用配置
#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #erro ...