当前位置: 首页 > wzjs >正文

广州 美容 公司 网站建设网站后台搭建教程

广州 美容 公司 网站建设,网站后台搭建教程,wordpress 设置权限,网站建设用户需求分析文章目录 RESTFUL 风格设计JSON数据中的返回工具类 R浏览器跨域问题及其前后端解决办法SpringMVC基于AOP的功能有哪些SpringMVC声明式异常处理SpringMVC拦截器 区别filter不能放行 RESTFUL 风格设计 url:尽量使用名词,如果实在重复使用动词method&#…

文章目录

  • RESTFUL 风格设计
  • JSON数据中的返回工具类 R
  • 浏览器跨域问题及其前后端解决办法
  • SpringMVC基于AOP的功能有哪些
  • SpringMVC声明式异常处理
  • SpringMVC拦截器 区别filter不能放行

RESTFUL 风格设计

  • url:尽量使用名词,如果实在重复使用动词
  • method:GET DELET(区别路径传参:唯一标识,和接受查询字符串:范围查询)POST PUT
  • param:
  • response:json

简单示例:

| 接口         | 保存用户功能  | id查询     | id更新        | id删除        | 多条件模糊查询                                 |                         数据分页展示                         |
| ------------ | ------------- | ---------- | ------------- | ------------- | ---------------------------------------------- | :----------------------------------------------------------: |
| **USER**     | /user         | /user/{id} | /user         | /user/{id}    | /user/search?page={page}&size={size}&keyword{} |                /user?page={page}&size={size}                 |
| **METHOD**   | post          | get        | put           | delete        | get                                            |                             get                              |
| **PARAM**    | json          | path       | json          | path          | page size keyword                              |                          page,size                           |
| **RESPONSE** | json{message} | json{id}   | json{message} | json{message} | json:{user}                                    | json{`content` `totalElements`  `totalPages`:  `number`:  `size`:  `first`:  `last`: } |

JSON数据中的返回工具类 R

package com.atguigu.utils;/*** projectName: com.atguigu.utils** description: 返回结果类*/
public class R {private int code = 200; //200成功状态码private boolean flag = true; //返回状态private Object data;  //返回具体数据public  static R ok(Object data){R r = new R();r.data = data;return r;}public static R  fail(Object data){R r = new R();r.code = 500; //错误码r.flag = false; //错误状态r.data = data;return r;}public int getCode() {return code;}public void setCode(int code) {this.code = code;}public boolean isFlag() {return flag;}public void setFlag(boolean flag) {this.flag = flag;}public Object getData() {return data;}public void setData(Object data) {this.data = data;}
}

浏览器跨域问题及其前后端解决办法

跨域问题是浏览器的一种安全保护机制,类似于河南省串货到北京,不允许。
浏览器通过字符串比对:协议,主机地址,端口号 判断是否跨域

解决办法:

  • 前端代理伪装地址
  • 后端@CrossOrigin 允许访问

SpringMVC基于AOP的功能有哪些

  • 日志记录
  • 事务管理
  • 安全控制
  • 缓存管理
  • 异常处理
  • 性能监控
  • 输入验证
  • 审计跟踪
  • 时间通知

SpringMVC声明式异常处理

配置方式:
通知注解 @ControllerAdvice @RestControllerAdvice
异常注解 @ExceptionHandler
Exception.class 兜底

SpringMVC拦截器 区别filter不能放行

配置方式:

  • 实现HandlerIntercepter接口

  • 配置bean :区别ref标签 和 bean标签

  • 设置拦截地址

<mvc:interceptors><mvc:interceptor><mvc:mapping path="/schedule/**"/><bean class="com.qxy.interceptors.InterceptorDemo"/></mvc:interceptor></mvc:interceptors>
  • 设置优先级 先声明的优先级高 三个方法按照切面通知执行

因为interceptor被ArrayList数组装配,调用的时候preHandler是正序遍历拦截器数组,反之倒序。

Dispatcher 对于拦截器的调用时机如下:

//Dispatcher中对interceptor.preHandle方法的处理:if (!mappedHandler.applyPreHandle(processedRequest, response)) {return;}//HandleExcutionChain中源码放置了这样一个拦截器数组,并且构造函数初始化private final List<HandlerInterceptor> interceptorList;// 配置拦截器的时候,先声明的先加入,对于pre采用正序遍历boolean applyPreHandle(HttpServletRequest request, HttpServletResponse response) throws Exception {for(int i = 0; i < this.interceptorList.size(); this.interceptorIndex = i++) {HandlerInterceptor interceptor = (HandlerInterceptor)this.interceptorList.get(i);if (!interceptor.preHandle(request, response, this.handler)) {this.triggerAfterCompletion(request, response, (Exception)null);return false;}}
//postHandle 完成拦截器则是倒序遍历
void applyPostHandle(HttpServletRequest request, HttpServletResponse response, @Nullable ModelAndView mv) throws Exception {for(int i = this.interceptorList.size() - 1; i >= 0; --i) {HandlerInterceptor interceptor = (HandlerInterceptor)this.interceptorList.get(i);interceptor.postHandle(request, response, this.handler, mv);}}//afterCompletion后置拦截器则是在后面,不管报不报异常都会执行,可以通过debug查看源码
http://www.dtcms.com/wzjs/552931.html

相关文章:

  • 微信视频网站建设多少钱服务专业的网页制作公司
  • 娱乐彩票网站建设制作适合小公司的记账软件
  • 做教程网站资源放哪里有重庆住房和城乡建设厅网站
  • 系统官网网站模板泰兴网站推广做网站
  • 太原 网站建设公司免费的国产cad
  • 网站技术部门架构南京建设银行网站
  • ui设计 国外网站共享经济型网站开发
  • 百度收录网站有什么好处网站服务器转移视频吗
  • 网站开发工程师岗位要求房产信息网站模板
  • 微信餐饮微网站建设南宁网站建设培训
  • 做网站的免费空间网站建设课程设计摘要
  • 曹县做网站哪一个网站是专门做兼职的
  • 网络舆情分析案例百度seo排名培训优化
  • ru后缀的网站中国电力建设集团有限公司
  • 西安哪里做网站最大网站ico图标
  • 服装织梦网站源码罗湖做网站的公司哪家好
  • 网站建设与开发的收获与体会东莞网站建设 硅橡胶
  • 多网站建设东营区住房和城乡建设局网站
  • 北京网站设计入门做绒毛鉴定网站
  • c 网站开发入门视频免费部署网站
  • 企业网站建设项目实践报告wordpress怎么换中文
  • 深圳网站建设快速排名电脑配件经营网站的建设
  • 网站建设费用 业务宣传费郴州微网站建设
  • 刷赞网站推广软件西安做网站一般多少钱
  • 林业网站模板简洁大气的网站设计
  • 成都网站seo性价比高电子商务网站建设试卷.doc
  • 平台网站的策划设计玉环网站制作
  • 苏州微网站建设公司网页设计与制作作业成品免费
  • 丽江门户网站中国公司名录大全
  • 网站建设考虑加速器国外