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

国外做兼职的网站做生存曲线网站

国外做兼职的网站,做生存曲线网站,怎么样再自己的网站做二级域名,敦化建设局网站目录 1. 概述 1.1 背景 1.2 源码 2. 测试 2.1 Controller 2.2 SpecialName配置 2.3 RequestConverter 2.4 测试 最近项目上遇到一个这样的需求#xff1a;用户请求的时候传过来A#xff0c;在api处理过程中要把A当成B去处理#xff0c;但是返回的标识中又必须是A作为…目录 1. 概述 1.1 背景 1.2 源码 2. 测试 2.1 Controller 2.2 SpecialName配置 2.3 RequestConverter 2.4 测试 最近项目上遇到一个这样的需求用户请求的时候传过来A在api处理过程中要把A当成B去处理但是返回的标识中又必须是A作为response的一部分。 举个例子就是A和B的权限是一样所以当api处理过程中当作B去处理。 于是在这会需要用到Aspect去做切面处理以下做了一些总结。 1. 概述 1.1 背景 以下通过一个简单的Springboot项目的api去测试这个逻辑过程。 关于AOP获取RequestBody参数更复杂的处理可以参考 SpringBoot AOP获取RequestBody参数_springboot获取body参数-CSDN博客 日志管理模块使用Aop使用Request获得前端的传参_aop获取request-CSDN博客 1.2 源码 Git地址https://github.com/BAStriver/springboot-test/blob/feature/annotation-for-request-params/springboot-jpa-demo/src/main/java/com/bas/controller/UserInfoController.java 2. 测试 2.1 Controller 创建如下的方法UserInfoDTO其中一个属性是name。 PostMapping(/test)ResponseBodypublic UserInfoDTO test(RequestBody UserInfoDTO user) {System.out.println(test);System.out.println(user: user);return user;} 2.2 SpecialName配置 com.bas.special.userT-ABC|ABC,T-EDF|EDF 2.3 RequestConverter Aspect Configuration Slf4j public class RequestConverter {Value(${com.bas.special.user})private ListString specialUsers;Pointcut(execution(* com.bas.controller.*Controller.*(..)))public void executeService() {}Around(executeService())public Object doAround(ProceedingJoinPoint pjp) throws Throwable { // parse request bodyMapString, String userMap specialUsers.stream().collect(Collectors.toMap(s - s.split(\\|)[0], s - s.split(\\|)[1]));if (userMap.isEmpty())return pjp.proceed();Object[] args pjp.getArgs();String userName null;for (Object arg : args) {log.info(arg: {}, arg);if (arg instanceof UserInfoDTO) {UserInfoDTO userInfoDTO (UserInfoDTO) arg;if (userMap.containsKey(userInfoDTO.getName())) {// change to special user nameuserName userInfoDTO.getName();userInfoDTO.setName(userMap.get(userInfoDTO.getName()));break;}}}Object result pjp.proceed();// rollback special user nameif (userName ! null result instanceof UserInfoDTO) {((UserInfoDTO) result).setName(userName);return result;} else {return pjp.proceed();}}} 其中pjp.proceed();是真正调用test()的地方在这之前如果nameT-ABC或T-EDF将会分别转成ABC或EDFproceed()之后在返回response之前再将name赋值回去T-ABC或T-EDF。 2.4 测试 ---- curl http://localhost:8080/user/test {name: T-ABC,gender: boy,age: 1 } 如图api request传入了T-ABC而test()变成了ABC然后response返回的是T-ABC。
http://www.pierceye.com/news/494611/

相关文章:

  • 建设银行个人网站打不开个人主页模板下载
  • 山西建设公司网站wordpress视频适应手机端
  • 原型样网站做一般的公司门户网站投资额
  • 南宁百度网站公司电话网站配置优化
  • 德州网站建设的公司免费注册公司怎么注册
  • 成都开发网站建设中国建设规划采购网站
  • 企业网站建设应避免数据孤岛深圳东莞网站建设
  • pk10网站怎么做郑州seo费用
  • 菏泽市建设局网站电话网站建设服务咨询
  • 购物网站模版广州外贸网络推广
  • 高碑店网站网站建设手机软件开发的模式
  • 公司网站开发国内外现状网络营销外包团队哪些好
  • 淘客网站怎么建立如何用api做网站
  • 合肥网站建设ahyedawordpress主题安全
  • 网站建设实训室介绍东莞seo广告宣传
  • 公职人员可以做公益网站吗aws网站建设
  • 什么叫高端网站定制广州建筑公司
  • 全新网站如何做百度竞价网站制作现状解决方案
  • 阿里云esc建设网站近三天时政热点
  • 怎样做公司网站介绍仿站网站源码下载
  • 电子商务网站规划与建设摘要软件app定制开发
  • 天水做网站的公司kj6699的seo综合查询
  • 找工程项目信息网站早那么做商城网站
  • 做网站优化销售管理系统排名
  • wordpress导入网站模板wordpress部分图片
  • 无锡做网站365caiyi秘密直播
  • 无锡企业网站制作报价公司做网站需要哪些手续
  • 最好的营销型网站保险购买平台有哪些
  • 网站建设实训的目的网站开发的框架协议
  • 本地郑州网站建设搭建一个网站