【#】Spring3 MVC 注解(一)---注解基本配置及@controller和 @RequestMapping 常用解释

一:配置web.xml
1)问题:spring项目中有多个配置文件mvc.xml dao.xml
2)解决:在web.xml中
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/xxx/*.xml</param-value>
xxx表示xml文件路径 *.xml表示后缀名为xml的任意文件
</init-param>
3)可以使用 逗号分隔
二:controller
1:spring mvc 中将 controller 认为是 MVC中的C --控制层
2:规范命名 类名 xxxController
3:如果不基于注解: 该类需要继承 CommandController 或者 其他很多 参见 spring帮助
如果基于注解:在类名前 加上 @controller
4:补充:将类名前加上该注解,当spring启动 或者web服务启动 spring会自动扫描所有包(当然,这个可以设置)
作用: 就是告诉服务器 这个类是MVC中的C 这个类可以接收用户请求 处理用户请求
三:问题:如何接收用户请求
1:假设用户请求URL 是: http://localhost:8080/项目名/xxx.do do不do都一样 不管这个do 你用什么都可以
2:这个时候,spring开始在所有的 C 中,找对应的处理请求的方法
3:在任意的可以C的类中,在你想要处理此请求的方法定义的前面
@RequestMapping("/xxx") 这个时候的xxx 就是用户请求的xxx 不管do
public String 方法名()
{
return “aaa”;
返回一个字符串,非常有用 要注意 用来决定要显示的MVC的 V 视图层 是哪个
}
四:上面 配置好了 MVC的 C 也就是 控制层 在方法中返回字符串 用来决定MVC的V 视图层
问题:如何让spring 去扫描类 建立关联
1:在配置文件中 (spring)的 假设是 mvc.xml 中
2:加入 <context:component-scan base-package="包路径"/>
五:问题 如何返回到视图层 V
1: 解决:此时,需要在配置文件中,加入视图解析器 有很多种 ,太多了
2:这里用基于jsp/jstl 视图
3:在web.xml 中加入bean 配置
<bean class="org.s...f....web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views"/> 前缀
<property name="suffix" value=".jsp"/> 后缀
</bean>
小结:通过上述5步 ,基本完成 C V 的配置
1:spring 中的C 一般起类名 XXXController 在这个类里面 需要加入@controller 标志这个类可以作为请求处理类 也就是 控制类
2:这个控制类里面可以有很多方法,哪个方法用来处理用户请求,就在那个方法前面 加 @RequestMapping(“/xxxxx请求路径”)
3;当请求处理完毕后 返回值 决定了 该处理完毕后 用户将跳转到那个页面 这个很重要
4:例如
@RequestMapping("/xxx") 这个时候的xxx 就是用户请求的xxx 不管do
public String 方法名()
{
return “aaa”;
返回一个字符串,非常有用 要注意 用来决定要显示的MVC的 V 视图层 是哪个
}
返回 aaa 根据配置文件中的 视图处理器配置 加入前缀 后缀
页面将跳转到 /WEB-INF/views/aaa.jsp
【#】Spring3 MVC 注解(一)---注解基本配置及@controller和 @RequestMapping 常用解释的更多相关文章
- Spring3 MVC 注解(一)---注解基本配置及@controller和 @RequestMapping 常用解释(转)
一:配置web.xml 1)问题:spring项目中有多个配置文件mvc.xml dao.xml 2)解决:在web.xml中 <init-param> <param-nam ...
- 关于Spring3 MVC的 HttpMediaTypeNotSupportedException
使用框架:Spring3 MVC + dojo1.8 前提:配置Spring MVC以JSON数据形式响应请求 使用场景:dojo向Spring MVC发送ajax请求 异常信息: org.sprin ...
- Spring3+SpingMVC+Hibernate4全注解环境配置
Spring3+SpingMVC+Hibernate4全注解环境配置 我没有使用maven,直接使用Eclipse创建动态Web项目,jar包复制在了lib下.这样做导致我马上概述的项目既依赖Ecli ...
- spring启动,spring mvc ,要不要xml配置,基于注解配置
老项目是09-11年搞的,用的是spring+struts2,没有用注解,全xml配置.web.xml中也配置了一大堆. 现在启动新项目,在项目中用spring+springmvc ,主要用注解,也用 ...
- 增加mvc:resources后访问不了注解配置的controller的问题
刚开始没有配置mvc:resourcescontroller能够正确访问,但是由于web.xml使用/拦截了所有的请求,所以静态资源访问不上增加mvc:resources之后,静态资源是能访问上了,但 ...
- Spring MVC 5 + Thymeleaf 基于Java配置和注解配置
Spring MVC 5 + Thymeleaf 注解配置 Spring的配置方式一般为两种:XML配置和注解配置 Spring从3.0开始以后,推荐使用注解配置,这两种配置的优缺点说的人很多,我就不 ...
- Spring MVC与注解相关的一些配置的方法
在spring mvc中,注解是需要通过配置文件去开启的,一般简单的项目可分为两个配置文件,这里姑且叫做spring-mvc.xml与spring-context.xml.其中spring-mvc.x ...
- Unit03: Spring Web MVC简介 、 基于XML配置的MVC应用 、 基于注解配置的MVC应用
Unit03: Spring Web MVC简介 . 基于XML配置的MVC应用 . 基于注解配置的MVC应用 springmvc (1)springmvc是什么? 是一个mvc框架,用来简化基于mv ...
- Spring mvc 增加静态资源配置后访问不了注解配置的controller
spring mvc 增加静态资源访问配置. 例如: <!-- 静态资源映射 --> <mvc:resources location="/static/" map ...
随机推荐
- Java-Runoob-高级教程:Java 序列化
ylbtech-Java-Runoob-高级教程:Java 序列化 1.返回顶部 1. Java 序列化 Java 提供了一种对象序列化的机制,该机制中,一个对象可以被表示为一个字节序列,该字节序列包 ...
- free 命令结果完全剖析
free 命令结果完全剖析 total 总物理内存大小. used 已分配的大小,注意,对操作系统来说任何被使用的内存都是used. free 未被分配的物理内存大小. shared 共享内存大小,主 ...
- 第二章 伪分布式安装hadoop hbase
安装单机模式的hadoop无须配置,在这种方式下,hadoop被认为是一个单独的java进程,这种方式经常用来调试.所以我们讲下伪分布式安装hadoop. 我们继续上一章继续讲解,安装完先试试SSH装 ...
- MessageBox 函数
函数原型: int WINAPI MessageBox( _In_opt_ HWND hWnd, _In_opt_ LPCTSTR lpText, _In_opt_ LPCTSTR lpCaption ...
- **不使用tuple函数,将列表转为元组
使用动态参数: l = [1, 1, 3, 4, 5] def f(*args): return args x = f(*l) print(x)
- bundle install 老是中断,可以在gemfile里面把source换成taobao源,可以自动安装
bundle install 老是中断,可以在gemfile里面把source换成taobao源,可以自动安装
- HTTP 1.0 & 1.1
简介: HTTP ( HyperText Transfer Protocol ) 超文本传输协议,是互联网上应用最广泛的一种网络协议. HTTP 是一个客户端和服务端请求.应答的标准.使用 WEB 浏 ...
- if __name__ == '__main__'的作用和原理
最简单的理解就是这样: __name__ 是当前模块名,当模块被直接运行时,模块名为 __main__. 所以 if __name__ == '__main__' 这句话的意思就是当前模块被直接运行时 ...
- Linux实战教学笔记45:NoSQL数据库之redis持久化存储(一)
第1章 redis存储系统 1.1 redis概述 REmote DIctionary Server(Redis)是一个基于key-value键值对的持久化数据库存储系统.redis和大名鼎鼎的Mem ...
- 使用cloudrea manager管理已有的cdh集群(转)
转自:http://blog.51cto.com/teacheryan/1912116 本文介绍如何搭建cloudera manager去接入已有hadoop组件(cdh). 一.下载必备文件: 1. ...