Spring MVC Controller介绍
2019独角兽企业重金招聘Python工程师标准>>>
SpringMVC 框架中,DispatcherServlet负责分发请求到控制器Controller 处理。Controller把用户的请求数据经过业务层处理后封装成一个ModelAndView对象,然后再把该对象返回给对应的View进行展示。在SpringMVC 中定义一个Controller是非常简单的,不需要继承特定的类,也不需要实现相关接口,只需使用@Controller 注解在一个类上进行标记即可。然后使用@RequestMapping等一些注解用定义URL 请求和映射,这样Controller 就能被访问了。
下面小博老师给大家演示一个Controller定义的小例子:
@Controller
public class BwfController {
@RequestMapping ( "/boweifeng" )
public ModelAndView showView() {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName( "boweifeng" );
modelAndView.addObject( "addredd" , "上海市云南北路59号15楼" );
return modelAndView;
}
}
在这个例子中,@Controller 用于标记一个类,使用@Controller标记的类就是一个SpringMVC Controller 对象。分发处理器将会扫描使用了该注解的类的方法,并检测该方法是否使用了@RequestMapping 注解。@Controller 只是定义了一个控制器类,而使用@RequestMapping 注解的方法才是真正处理请求的处理器。
仅仅使用@Controller 标记还不能真正意义上的说它就是SpringMVC 的一个控制器类,因为没有相关配置,Spring 还不能识别它。那么怎么才能让Spring识别它呢?这就需要我们把这个控制器类交给Spring管理。
两种方式可以把BwfController交给Spring 管理,让它能够识别标记的@Controller 。
1. 在SpringMVC 的配置文件中定义MyController 的bean 对象。
<bean class="com.bwf.controller.BwfController "/>
这句话意味着在spring中手动定义该controller bean。如果controller比较多,这样做会比较麻烦。
2. 在SpringMVC 的配置文件中告诉Spring 该到哪里去找标记为@Controller 的Controller 控制器。
<context:component-scan base-package = "com.bwf.controller" />
定义了component-scan 后,spring会自动扫描指定包内的类是否有@Controller注解。
转载于:https://my.oschina.net/u/2971691/blog/795522
Spring MVC Controller介绍相关推荐
- spring mvc controller间跳转 重定向 传参
spring mvc controller间跳转 重定向 传参 1. 需求背景 需求:spring MVC框架controller间跳转,需重定向.有几种情况:不带参数跳转,带参数拼接url形 ...
- java注解返回不同消息,Spring MVC Controller中的一个读入和返回都是JSON的方法如何获取javax.validation注解的异常信息...
Spring MVC Controller中的一个读入和返回都是JSON的方法怎么获取javax.validation注解的错误信息? 本帖最后由 LonelyCoder2012 于 2014-03- ...
- Spring MVC Controller 要点
2019独角兽企业重金招聘Python工程师标准>>> 今天看到一篇讲解 Spring MVC Controller 的文章,比较详细,顺道翻译下. 在 Spring MVC 中,我 ...
- Spring MVC Controller中返回json数据中文乱码处理
问题 在使用spring MVC Controller的过程中,发现返回到客户端的的中文出现乱码.后台Java代码: @RequestMapping(value = "/upload&quo ...
- Spring MVC Controller与jquery ajax请求处理json
在用 spring mvc 写应用的时候发现jquery传递的[json数组对象]参数后台接收不到,多订单的处理,ajax请求: var cmd = {orders:[{"storeId&q ...
- Spring mvc Controller间跳转/重定向/传参
Spring mvc Controller常用写法 1.ModelAndView @RequestMapping(value = "/getxxxList.html") publi ...
- Spring MVC 使用介绍(二)—— DispatcherServlet
一.Hello World示例 1.引入依赖 <dependency><groupId>javax.servlet</groupId><artifactId& ...
- Spring MVC Controller 的同一个 URL 请求,根据逻辑判断返回 JSON 或者 HTML 视图
为什么80%的码农都做不了架构师?>>> 需求 有这样一个需求,用户注册时,对于浏览器终端和非浏览器终端发起的 HTTP 请求,都走同一个 URL:/user/register ...
- Spring mvc Controller接口
Spring MVC 1. 继承该接口 Controller接口,重写对应方法,或者采用注解Controller,自定义映射文件 1 @Controller 2 @RequestMapping(&qu ...
最新文章
- python后端学什么框架_献给正在学习python的你, 10个最受欢迎的Python开源框架
- 剑指offer-99.调整数组顺序使奇数位于偶数前面
- Linux使用技巧9--用dpkg管理你的软件
- Java基础--反射
- 如何把hello.c 输出到txt_如何在程序开发中进行文件的相关操作呢?往这看
- 熟练使用Jmeter,这个知识点你一定要看
- 一个拼凑sql,输出变量的 存储过程
- EXTJS Date 的转换格式化字符
- Linux:什么是 i386、i586、 i686、noarch?
- Python中的三目表达式
- Springboot 结合 Vue 进行本地接口联调
- C++一本通题库1012
- 云轴科技 ZStack 与和信创天完成兼容性认证,打造稳定安全的桌面云!
- 简悦保存notion一直显示请稍后重试
- 智能交通组合拳--飞桨实现车辆类别/车牌/车速检测、跨境头跟踪、车流密度检测、逆行检测
- android5.0刷机,一加手机怎么升级安卓5.0 一加手机刷Android 5.0教程
- [MachineLearning] 机器学习速成笔记 - Bilibili
- java编写一个圆环类Ring_编写一个圆环类ring的java程序
- Workflow设计模式指的什么?
- Windows NT 技术(NT:New Technoly)
热门文章
- 连接池--在密码修改的影响
- 又叒叕是一篇讲缓存的文章
- 刷题百道却跪在白板面试?白板面试FAQ为你答疑解惑
- [Usaco2009 Open]工作安排Job
- LeetCode 24 Swap Nodes in Pairs(交换序列中的结点)
- cocos2dx 3.x ccPositionTextureColor_vert与ccPositionTextureColor_noMVP_vert
- DirectSound的应用
- 大数据导论之为何需要引入大数据
- 由wsdl生成java,这是最原始的axis1
- 浅谈ARP病毒的清除与预防