欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

慕课网项目:Java高并发秒杀API的学习笔记(三)Web层分析

程序员文章站 2022-06-12 15:39:41
...

课程链接:Java高并发秒杀API之web层

CSDN参考:Java高并发秒杀API(三)之Web层

 

0.说明

本篇文章根据我自己的编程理解,结合参考的博客对该项目Web层进行分析与补充。

1.Restful接口

他兴起于Rails。是一种优雅的URI表述方式。表示资源的状态的状态的转移。

2.幂等性

多次操作j结果就像一次操作结果一样,这就是幂等的。否则非幂等。

3.URL设计

/模块/资源/{标志}/集合1/......

4.使用SpringMVC框架

A.围绕handler开发。

包括Model数据和View页面。

BSpringMVC机理

慕课网项目:Java高并发秒杀API的学习笔记(三)Web层分析

C.Http请求映射原理

http请求——>Servlet容器,通过SpringMVCHandlerMapping(注解或xml或编程方式)得到Handler来处理方法。

5.请求处理举例

  @RequestMapping(value = "/{seckillId}/{md5}/execution",
            method = RequestMethod.POST,                          //指定请求方法
            produces = {"application/json;charset=UTF-8"})
    @ResponseBody                                                //返回json类型
    public SeckillResult<SeckillExecution> execute(
                @PathVariable("seckillId") Long seckillId,       //请求参数绑定
                @PathVariable("md5") String md5,
                @CookieValue(value = "userPhone",required = false)     //cookie访问
{...}
    return "redirect:/seckill/list";    //重定向
    return "forward:/seckill/list";    //转发

6.Controller

web包下建立SeckillContoller。用Service的对象。

Service层中的抛出异常是为了让Spring能够回滚,Controller层中捕获异常是为了将异常转换为对应的Json供前台使用,缺一不可

7.页面开发

使用了Bootstrap和jQuery。

8.dto翻新

新建SeckillResult.java,用来将所有的ajax请求返回类型,全部封装成json数据。他是泛型。

9.小结

编写页面、js。写Controller进行后台处理。

10.说明

第四部分高并发视频:Java高并发秒杀API之高并发优化

CSDN参考:Java高并发秒杀API(四)之高并发优化

第四篇实在太详细,笔者无从下手。本系列完。