首先我们的界面在返回的时候回根据我们的配置信息进行路径的查找  然后会识别我们的控制器返回的字符串(其实就是界面的名字)而找到界面的信息,eg:如果我们返回的是success那么就会去找我们的WEB-INF下的对应的success.jsp或者success.html界面

控制层:

/**
* 请求参数绑定
*/
@Controller
@RequestMapping(value = "/param")
public class paramController { @RequestMapping("/testParams")
public String testParam(){
System.out.println("执行了.....");
return "success";
}
}

然后请求返回的就是我们的success界面

注解:

要在类上加@Controller 注解是等于把类交给ioc容器进行管理  并且让我们的配置可以通过这个@Controller注解识别到这个类

java的注解长得类似于python的装饰器但是作用是不同的,因为java的注解只是为了声明这个方法或者类具有这个功能,功能是提前定义好的或者自带的,但是要手动加上,而python的装饰器的作用是自己定义那些不改变函数的方法的形式而增加的功能

请求注解:RequestMapping

建立请求url和处理方法之间的对应关系

当我们的请求进来的时候要进行url的定义就是通过RequestMapping,并且RequestMapping 可以多级分发,java的url是一级一级的去找  而不是直接定义完整的url

像上面的完整的url就是/params/testParams

RequestMapping 的参数:

    path  接受定义的url

    value  和path的作用相同,都是接受url两者用哪个都可以

    

1. path   指定请求路径的url
2. value 和path属性一样
3. mthod 指定该方法的请求方式
4. params 指定限制请求参数的条件
5. headers 发送的请求中必须包含的请求头

path/value属性

如果RequestMapping中只有这一个属性可以省略不写

    @RequestMapping("/testParams")  //可以省略path/value不写
public String testParam(){
System.out.println("执行了.....");
return "success";
}

method属性

声明请求方式

@RequestMapping(value = "/param",method = RequestMethod.GET)

上面是声明请求方式只能为GET方法 其余方法不可以使用

如果想要定义多个请求方式可以如下:

metgod = {请求方式}

@RequestMapping(value = "/param",method = {RequestMethod.GET,RequestMethod.POST})

上面就是定义/params这个url使用的时候可以是GET也可以是POST

params:请求参数

如果定义了params那么请求的时候必须携带这个参数

@Controller
@RequestMapping(value = "/param",method = {RequestMethod.GET,RequestMethod.POST}, params={"username"})

上面是规定请求的时候必须携带params中的username的参数 否则就不允许

默认参数:

 @RequestMapping(path = "/hell",method={RequestMethod.GET, RequestMethod.POST},params={"username=hehe"})   // params可以规定死的参数

规定请求参数必须是hehe否则就报错

headers:

规定请求头,

 @RequestMapping(path = "/hell",method={RequestMethod.GET, RequestMethod.POST},params={"username=hehe"},headers = {"Accept"}) 

规定我们的请求必须要携带这个请求头

spring mvc 程序的更多相关文章

  1. Spring MVC程序中得到静态资源文件css,js,图片文件的路径问题总结

    上一篇 | 下一篇 Spring MVC程序中得到静态资源文件css,js,图片 文件的路径 问题总结 作者:轻舞肥羊 日期:2012-11-26 http://www.blogjava.net/fi ...

  2. 第一个Spring MVC程序

    最近公司项目要开始使用Spring MVC替代Struts2了,就学习了一下Spring MVC的使用.这是第一个Spring mvc程序,分别使用xml和注解两种方式. 一.使用xml格式进行构建 ...

  3. Spring MVC程序

    Spring MVC程序(IDEA开发环境)   回顾Java平台上Web开发历程来看,从Servlet出现开始,到JSP繁盛一时,然后是Servlet+JSP时代,最后演化为现在Web开发框架盛行的 ...

  4. Spring MVC 程序首页的设置 - 一号门-程序员的工作,程序员的生活(java,python,delphi实战)

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  5. 编写简单的spring mvc程序,在tomcat上部署

    编写简单的spring mvc程序,在tomcat上部署 1 用java 配置spring mvc ,可以省去web.xmlpackage hello;import org.springframewo ...

  6. Spring MVC程序中得到静态资源文件css,js,图片

    转载自:http://www.blogjava.net/fiele/archive/2014/08/24/417283.html 用 Spring MVC 开发应用程序,对于初学者有一个很头疼的问题, ...

  7. Spring MVC程序中怎么得到静态资源文件css,js,图片文件的路径问题

    问题描述 在用springmvc开发应用程序的时候.对于像我一样的初学者,而且还是自学的人,有一个很头疼的问题.那就是数据都已经查出来了,但是页面的样式仍然十分简陋,加载不了css.js,图片等资源文 ...

  8. Spring学习之第一个Spring MVC程序(IDEA开发环境)

    回顾Java平台上Web开发历程来看,从Servlet出现开始,到JSP繁盛一时,然后是Servlet+JSP时代,最后演化为现在Web开发框架盛行的时代.一般接触到一个新的Web框架,都会想问这个框 ...

  9. 编写第一个spring MVC程序

    一.下载和安装spring框架 进入http://repo.springsource.org/libs-release-local/org/springframework/spring/4.2.0.R ...

随机推荐

  1. PHP的Session机制解析 2

    在鸟哥的博客看到对php session的过期时间的一篇文章,在此记录. 原文地址:http://www.laruence.com/2012/01/10/2469.html 以下是鸟哥博客原文: 今天 ...

  2. CATiledLayer显示超大图片的解决方案

    先对图片进行了裁剪 -> 很多小图片, 然后再根据显示 进行绘制 - (void)viewDidLoad { [super viewDidLoad]; [self cutImageAndSave ...

  3. https中引用http

    https里引用http不安全,会报错 解决方案 1.可以部署在http中,http中引用https不会存在安全问题报错 2.https中引用https,把需要引用的http部署成https

  4. Django-自定义用户模型

    Django最方便的一点,是自带用户系统,但有些情况下,不符合项目需求, 原因1.我们有时候需要自定义一些字段,或者删除Django自带字段,2.我们有时候需要定义哪些字段是必填的,登陆时的用户名是哪 ...

  5. GET and POST

    有待补充:

  6. 2019PhpStrom注册码(破解)+汉化(中文)

    PhpStrom破解使用 IDEA激活码:  https://app.yinxiang.com/fx/bd2158ab-fea3-4382-966f-eaf54f5a4de7 phpStorm使用说明 ...

  7. go 学习之字符串

    字符串 字符串是不可变值类型,内部⽤用指针指向 UTF-8 字节数组.默认值是空字符串 "".用索引号访问某字节,如 s[i], i不能是负数.不能⽤用序号获取字节元素指针,&am ...

  8. java虚拟机规范(se8)——class文件格式(六)

    4.7.4 StackMapTable 属性 StackMapTable 属性是一个变长属性,位于 Code(§4.7.3)属性的属性表中.这个属性会在虚拟机类加载的类型阶段(§4.10.1)被使用. ...

  9. BUUCTF weirdlist 一路到底

    Weird list 这题恶心的一批 给了一堆列表 这...这是人做的题吗... 放飞自我,打开脑洞 把‘1’空出来,其他数字换为‘*’画出来 然后看到了flag,但是 这...这是什么flag,ag ...

  10. Mybatis+Springmvc+Spring整合常用的配置文件

    1.创建web项目 2.导入mabatis spring springnvc 需要的jar包 3.创建mybatis,spring,springmvc的配置文件 (1)web.xml配置文件 < ...