Spring MVC学习(六)-------注解式控制器详解1
来源:互联网 发布:分辨率300的软件 编辑:程序博客网 时间:2024/05/20 22:30
6.1、注解式控制器简介
6.2、入门
java代码:
Java代码
- package cn.javass.chapter6.web.controller;
- //省略import
- @Controller // 或 @RequestMapping //①将一个POJO类声明为处理器
- public class HelloWorldController {
- @RequestMapping(value = "/hello") //②请求URL到处理器功能处理方法的映射
- public ModelAndView helloWorld() {
- //1、收集参数
- //2、绑定参数到命令对象
- //3、调用业务对象
- //4、选择下一个页面
- ModelAndView mv = new ModelAndView();
- //添加模型数据 可以是任意的POJO对象
- mv.addObject("message", "Hello World!");
- //设置逻辑视图名,视图解析器会根据该名字解析到具体的视图页面
- mv.setViewName("hello");
- return mv; //○3 模型数据和逻辑视图名
- }
- }
java代码:
Java代码
- <!—Spring3.1之前的注解 HandlerMapping -->
- <bean
- class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"/>
- <!—Spring3.1之前的注解 HandlerAdapter -->
- <bean
- class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"/>
java代码:
Java代码
- <!--Spring3.1开始的注解 HandlerMapping -->
- <bean
- class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>
- <!--Spring3.1开始的注解 HandlerAdapter -->
- <bean
- class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>
java代码:
Java代码
- <!-- 处理器 -->
- <bean class="cn.javass.chapter6.web.controller.HelloWorldController"/>
java代码:
Java代码
- <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- <title>Hello World</title>
- </head>
- <body>
- ${message}
- </body>
- </html>
6.3、运行流程
6.4、处理器定义
6.4.1、@Controller
java代码:
Java代码
- @Controller
- public class HelloWorldController {
- ……
- }
6.4.2、@RequestMapping
java代码:
Java代码
- @RequestMapping
- public class HelloWorldController {
- ……
- }
Java代码
- package cn.javass.chapter6.web.controller;
- @Controller
- @RequestMapping(value="/user") //①处理器的通用映射前缀
- public class HelloWorldController2 {
- @RequestMapping(value = "/hello2") //②相对于①处的映射进行窄化
- public ModelAndView helloWorld() {
- //省略实现
- }
- }
6.4.3、窄化请求映射
java代码:
Java代码
- package cn.javass.chapter6.web.controller;
- @Controller
- @RequestMapping(value="/user") //①处理器的通用映射前缀
- public class HelloWorldController2 {
- @RequestMapping(value = "/hello2") //②相对于①处的映射进行窄化
- public ModelAndView helloWorld() {
- //省略实现
- }
- }
6.5、请求映射
http请求信息包含六部分信息:
①请求方法,如GET或POST,表示提交的方式;
②URL,请求的地址信息;
③协议及版本;
④请求头信息(包括Cookie信息);
⑤回车换行(CRLF);
⑥请求内容区(即请求的内容或数据),如表单提交时的参数数据、URL请求参数(?abc=123 ?后边的)等。
想要了解HTTP/1.1协议,请访问http://tools.ietf.org/html/rfc2616。
那此处我们可以看到有①、②、④、⑥一般是可变的,因此我们可以这些信息进行请求到
处理器的功能处理方法的映射,因此请求的映射分为如下几种:
0 0
- Spring MVC学习(六)-------注解式控制器详解1
- Spring MVC学习(六)-------注解式控制器详解1
- Spring MVC学习(六)-------注解式控制器详解2
- Spring MVC学习(六)-------注解式控制器详解3
- Spring MVC学习(六)-------注解式控制器详解4
- Spring MVC学习(六)-------注解式控制器详解5
- Spring MVC学习(六)-------注解式控制器详解2
- Spring MVC学习(六)-------注解式控制器详解3
- Spring MVC学习(六)-------注解式控制器详解4
- Spring MVC学习(六)-------注解式控制器详解5
- Spring MVC详解(六)注解式控制器详解(1)
- Spring MVC详解(六)注解式控制器详解(1)
- 第六章、SpringMVC学习-注解式控制器详解(3)-Spring MVC 3 生产者、消费者请求限定
- 码农小汪-Spring MVC注解式控制器简介
- Spring MVC学习(四)-------Controller接口控制器详解1
- Spring MVC学习(四)-------Controller接口控制器详解1
- Spring MVC详解(七) 注解式控制器的数据验证、类型转换及格式化(1)
- Spring MVC详解(七) 注解式控制器的数据验证、类型转换及格式化(1)
- P1006 传纸条
- 蓝桥杯省赛12
- 最大连续子序列求和详解
- 利用VS2013在win7 64位机器上搭建xgboost 0.6+Anaconda3 环境
- poj2262 简单素数判定
- Spring MVC学习(六)-------注解式控制器详解1
- ueditor二次加载(getEditor)渲染失败(加载失败)的原因解决方案
- mooc_排序
- POJ1651Multiplication Puzzle(区间dp)
- ZOJ 3705 Applications(模拟题)
- 搜索结果处理——变色
- softmax回归
- HDU1247:Hat’s Words(字典树)
- C++之枚举类型enum