• spring mvc 程序


    首先我们的界面在返回的时候回根据我们的配置信息进行路径的查找  然后会识别我们的控制器返回的字符串(其实就是界面的名字)而找到界面的信息,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"}) 

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

  • 相关阅读:
    Miox带你走进动态路由的世界——51信用卡前端团队
    从零开始搭建Vue组件库 VV-UI
    你不知的DOM编程
    浅谈前后端分离与实践(一)
    处理 Vue 单页面应用 SEO 的另一种思路
    Vue服务端渲染和Vue浏览器端渲染的性能对比
    实例PK(Vue服务端渲染 VS Vue浏览器端渲染)
    使用ES6+Vue+webpack+gulp构建新一代Web应用
    耐克的定制页用canvas如何实现....跪求前端大神指点。
    Unity热更新学习(二) —— ToLua c#与lua的相互调用
  • 原文地址:https://www.cnblogs.com/zhaoyunlong/p/10807812.html
Copyright © 2020-2023  润新知