/**

* Created by 12274 on 2018/8/29.

* 实现类所有方法入参校验

*/

@Aspect

@Component

@Slf4j

public class AopServiceImplConfig {

@Pointcut("execution(public * cn.primeledger.bitun.boss.biz.api.*.*(..))")

public void paramValidate(){

}

@Before("paramValidate()")

public void before(JoinPoint joinPoint) throws Throwable {

//参数数组 不可能为空,如果没有参数->{},如果参数为null->{null}

Object[] paramArray = joinPoint.getArgs();

log.info("class={},methon name={},methon param={}",joinPoint.getSignature().getName(),paramArray);

//判断参数数组是否为null

if (paramArray != null && paramArray.length > 0){

try{

for (Object obj : paramArray) {

BeanValidator.validate(obj).failThrow();

}

}catch (Exception e){

throw new BossParamsException(e.getMessage());

}

}

}

}

aop springboot 传入参数_springboot用aop做参数校验相关推荐

  1. aop springboot 传入参数_Springboot添加AOP打印请求参数

    1. 引入依赖 org.springframework.boot spring-boot-starter-aop 2. 写切面 切面类需要加@Aspect和@Component注解 package c ...

  2. aop springboot 传入参数_java相关:springboot配置aop切面日志打印过程解析

    java相关:springboot配置aop切面日志打印过程解析 发布于 2020-3-31| 复制链接 摘记: 这篇文章主要介绍了springboot配置aop切面日志打印过程解析,文中通过示例代码 ...

  3. aop springboot 传入参数_Spring、SpringMVC和SpringBoot看这一篇就够了!

    一.概念 1.Spring Spring是一个开源容器框架,可以接管web层,业务层,dao层,持久层的组件,并且可以配置各种bean,和维护bean与bean之间的关系.其核心就是控制反转(IOC) ...

  4. springboot获取多个请求参数_springboot获取URL请求参数的多种方式

    1.直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于post方式提交. /** * 1.直接把表单的参数写在Controller相应的方法的形参中 * @pa ...

  5. springboot security 权限校验_springboot借助aop和注解实现权限校验

    我们用springboot做后台开发,难免会用到权限校验,比如查看当前用户是否合法,是否是管理员.而spring的面向切面的特效可以帮助我们很好的实现动态的权限校验.这里我们就用到的spring的ao ...

  6. springboot aop使用_SpringBoot 使用AOP实现读写分离

    前言 入职新公司到现在也有一个月了,完成了手头的工作,前几天终于有时间研究下公司旧项目的代码.在研究代码的过程中,发现项目里用到了Spring Aop来实现数据库的读写分离,本着自己爱学习(我自己都不 ...

  7. Spring之AOP系列--将方法上的注解做为切点(用@Around)

    原文网址:Spring之AOP系列--将方法上的注解做为切点(用@Around)_IT利刃出鞘的博客-CSDN博客 简介 说明         本文介绍Spring(SpringBoot)的AOP的用 ...

  8. SpringBoot多数据源切换,AOP实现动态数据源切换

    SpringBoot多数据源切换,AOP实现动态数据源切换 操作数据一般都是在DAO层进行处理,可以选择直接使用JDBC进行编程 或者是使用多个DataSource 然后创建多个SessionFact ...

  9. 你知道面试必问的AOP吗(2),我在华为做Java外包的真实经历

    @Pointcut("execution (* com.xxx.service..*.*(..))")public void cut(){}/*** 声明前置通知 并将通知应用到定 ...

最新文章

  1. python中json.load()、json.loads()、json.dump()、json.dumps()的区别
  2. 开源的库RestSharp轻松消费Restful Service
  3. LeetCode 19 删除链表的倒数第 N 个结点
  4. boost::all_degree_centralities用法的测试程序
  5. python document_python处理document文档保留原样式
  6. webpack 入口文件 php,如何实现webpack多入口文件打包配置
  7. 李迟2021年9月知识总结
  8. Thinkphp 实现上一篇与下一篇的方法
  9. Py6S模块安装过程(Win10环境,64位)
  10. 计算机多功能教室管理制度,多媒体教室管理制度
  11. 微信投票作弊神器的制作代码
  12. GIF 屏幕录制工具
  13. 面经手册 · 第12篇《面试官,ThreadLocal 你要这么问,我就挂了!》
  14. vue-pdf打印出现方字块乱码问题
  15. Code for VeLO 2: Training Versatile Learned Optimizers by Scaling Up
  16. C语言指针相关——经典面试题
  17. 几道js数组循环练习题
  18. JavaScript 实现前端下载图片
  19. V2V-5G自动驾驶交流微信群
  20. 设置mysql中自增列的初始值和增加步长

热门文章

  1. php 数组 excel,PHPExcel文件如何导入成数组(选择指定的列)?
  2. 图片传输_一幅图片的奇妙旅行,网络传输分层通信协议原理揭秘
  3. c语言位运算测试题及答案,[原创] 位运算和bit位操作程序题目答案 -- 谭浩强C语言习题...
  4. 计算机不能直接执行c语言编写的源程序,计算机不能直接执行用C语言编写的源程序。...
  5. Java 实现线性运动界面_java 实现顺序结构线性列表
  6. linux 重启oracle_学习Linux前需要知道的事
  7. List的Stream流操作
  8. Linux下修改系统时间的简单方法
  9. double四舍五入
  10. Spring Boot中@Autowired可以省略的情况