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介绍相关推荐

  1. spring mvc controller间跳转 重定向 传参

    spring mvc controller间跳转 重定向 传参 1. 需求背景     需求:spring MVC框架controller间跳转,需重定向.有几种情况:不带参数跳转,带参数拼接url形 ...

  2. java注解返回不同消息,Spring MVC Controller中的一个读入和返回都是JSON的方法如何获取javax.validation注解的异常信息...

    Spring MVC Controller中的一个读入和返回都是JSON的方法怎么获取javax.validation注解的错误信息? 本帖最后由 LonelyCoder2012 于 2014-03- ...

  3. Spring MVC Controller 要点

    2019独角兽企业重金招聘Python工程师标准>>> 今天看到一篇讲解 Spring MVC Controller 的文章,比较详细,顺道翻译下. 在 Spring MVC 中,我 ...

  4. Spring MVC Controller中返回json数据中文乱码处理

    问题 在使用spring MVC Controller的过程中,发现返回到客户端的的中文出现乱码.后台Java代码: @RequestMapping(value = "/upload&quo ...

  5. Spring MVC Controller与jquery ajax请求处理json

    在用 spring mvc 写应用的时候发现jquery传递的[json数组对象]参数后台接收不到,多订单的处理,ajax请求: var cmd = {orders:[{"storeId&q ...

  6. Spring mvc Controller间跳转/重定向/传参

    Spring mvc Controller常用写法 1.ModelAndView @RequestMapping(value = "/getxxxList.html") publi ...

  7. Spring MVC 使用介绍(二)—— DispatcherServlet

    一.Hello World示例 1.引入依赖 <dependency><groupId>javax.servlet</groupId><artifactId& ...

  8. Spring MVC Controller 的同一个 URL 请求,根据逻辑判断返回 JSON 或者 HTML 视图

    为什么80%的码农都做不了架构师?>>>    需求 有这样一个需求,用户注册时,对于浏览器终端和非浏览器终端发起的 HTTP 请求,都走同一个 URL:/user/register ...

  9. Spring mvc Controller接口

    Spring MVC 1. 继承该接口 Controller接口,重写对应方法,或者采用注解Controller,自定义映射文件 1 @Controller 2 @RequestMapping(&qu ...

最新文章

  1. python后端学什么框架_献给正在学习python的你, 10个最受欢迎的Python开源框架
  2. 剑指offer-99.调整数组顺序使奇数位于偶数前面
  3. Linux使用技巧9--用dpkg管理你的软件
  4. Java基础--反射
  5. 如何把hello.c 输出到txt_如何在程序开发中进行文件的相关操作呢?往这看
  6. 熟练使用Jmeter,这个知识点你一定要看
  7. 一个拼凑sql,输出变量的 存储过程
  8. EXTJS Date 的转换格式化字符
  9. Linux:什么是 i386、i586、 i686、noarch?
  10. Python中的三目表达式
  11. Springboot 结合 Vue 进行本地接口联调
  12. C++一本通题库1012
  13. 云轴科技 ZStack 与和信创天完成兼容性认证,打造稳定安全的桌面云!
  14. 简悦保存notion一直显示请稍后重试
  15. 智能交通组合拳--飞桨实现车辆类别/车牌/车速检测、跨境头跟踪、车流密度检测、逆行检测
  16. android5.0刷机,一加手机怎么升级安卓5.0 一加手机刷Android 5.0教程
  17. [MachineLearning] 机器学习速成笔记 - Bilibili
  18. java编写一个圆环类Ring_编写一个圆环类ring的java程序
  19. Workflow设计模式指的什么?
  20. Windows NT 技术(NT:New Technoly)

热门文章

  1. 连接池--在密码修改的影响
  2. 又叒叕是一篇讲缓存的文章
  3. 刷题百道却跪在白板面试?白板面试FAQ为你答疑解惑
  4. [Usaco2009 Open]工作安排Job
  5. LeetCode 24 Swap Nodes in Pairs(交换序列中的结点)
  6. cocos2dx 3.x ccPositionTextureColor_vert与ccPositionTextureColor_noMVP_vert
  7. DirectSound的应用
  8. 大数据导论之为何需要引入大数据
  9. 由wsdl生成java,这是最原始的axis1
  10. 浅谈ARP病毒的清除与预防