org.aspectj.lang.annotation.Before类的使用及代码示例

x33g5p2x  于2022-01-16 转载在 其他  
字(9.3k)|赞(0)|评价(0)|浏览(261)

本文整理了Java中org.aspectj.lang.annotation.Before类的一些代码示例,展示了Before类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Before类的具体详情如下:
包路径:org.aspectj.lang.annotation.Before
类名称:Before

Before介绍

暂无

代码示例

代码示例来源:origin: shuzheng/zheng

@Before("execution(* *..rpc..*.*(..))")
public void doBeforeInServiceLayer(JoinPoint joinPoint) {
  LOGGER.debug("doBeforeInServiceLayer");
  startTime = System.currentTimeMillis();
}

代码示例来源:origin: ZHENFENG13/My-Blog

@Before("webLog()")
public void doBefore(JoinPoint joinPoint) {
  // 接收到请求,记录请求内容
  ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
  HttpServletRequest request = attributes.getRequest();
  // 记录下请求内容
  LOGGER.info("URL : " + request.getRequestURL().toString() + ",IP : " + request.getRemoteAddr() + ",CLASS_METHOD : " + joinPoint.getSignature().getDeclaringTypeName() + "." + joinPoint.getSignature().getName() + ",ARGS : " + Arrays.toString(joinPoint.getArgs()));
}

代码示例来源:origin: sannies/mp4parser

@Before("this(org.mp4parser.support.AbstractBox) && ((execution(public * * (..)) && !( " +
    "execution(* parseDetails()) || " +
    "execution(* getNumOfBytesToFirstChild()) || " +
    "execution(* getType()) || " +
    "execution(* isParsed()) || " +
    "execution(* getHeader(*)) || " +
    "execution(* parse()) || " +
    "execution(* getBox(*)) || " +
    "execution(* getSize()) || " +
    "execution(* getOffset()) || " +
    "execution(* setOffset(*)) || " +
    "execution(* parseDetails()) || " +
    "execution(* _parseDetails(*)) || " +
    "execution(* parse(*,*,*,*)) || " +
    "execution(* getIsoFile()) || " +
    "execution(* getParent()) || " +
    "execution(* setParent(*)) || " +
    "execution(* getUserType()) || " +
    "execution(* setUserType(*))) && " +
    "!@annotation(org.mp4parser.support.DoNotParseDetail)) || @annotation(org.mp4parser.support.ParseDetail))")
public void before(JoinPoint joinPoint) {
  if (joinPoint.getTarget() instanceof AbstractBox) {
    if (!((AbstractBox) joinPoint.getTarget()).isParsed()) {
      //System.err.println(String.format("parsed detail %s", joinPoint.getTarget().getClass().getSimpleName()));
      ((AbstractBox) joinPoint.getTarget()).parseDetails();
    }
  } else {
    throw new RuntimeException("Only methods in subclasses of " + AbstractBox.class.getName() + " can  be annotated with ParseDetail");
  }
}

代码示例来源:origin: appium/java-client

@Before(EXECUTION_NAVIGATION_TO)
public void beforeNavigateTo(JoinPoint joinPoint) throws Throwable {
  try {
    listener.beforeNavigateTo(String.valueOf(joinPoint.getArgs()[0]), driver);
  } catch (Throwable t) {
    throw getRootCause(t);
  }
}

代码示例来源:origin: timebusker/spring-boot

/**
   * 前置通知:在连接点执行前的通知,但不能阻止连接点前的执行(除非它抛出一个异常)
   */

// 引用多个切入点
//    @Before("log6() OR log7()")
// 引用单个切入点
  @Before("logaa1()")
  public void beforeAdvice(JoinPoint point) {
    logger.info("SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS");
    logger.info("LoggerHandlerAop.beforeAdvice...time:" + DateUtil.now());
    Signature signature = point.getSignature();
    logger.info("所属类名称:" + signature.getDeclaringTypeName() + "\n代理类:" + signature.getClass() + "\n方法名称:" + signature.getName() + "\n所属类:" + signature.getDeclaringType());
    Object[] args = point.getArgs();
    logger.info("参数是:" + JSON.toJSONString(args));
    logger.info("被织入的对象是:" + point.getTarget());
    logger.info("EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE");
  }

代码示例来源:origin: octo-online/reactive-audit

@Before("call(* java.io.OutputStream.write(..))")
public void write(JoinPoint thisJoinPoint)
{
  OutputStream out = (OutputStream) thisJoinPoint.getTarget();
  if (config.isDebug())
  {
    config.logger.finest(
        thisJoinPoint.toString() + "  with " + FileTools.dumpChain(out));
  }
  latency(HIGH, thisJoinPoint, (OutputStream) thisJoinPoint.getTarget());
}

代码示例来源:origin: spring-projects/spring-framework

@Before(value="execution(void set*(*)) && this(modifiable) && args(newValue)", argNames="modifiable,newValue")
public void recordModificationIfSetterArgumentDiffersFromOldValue(
    JoinPoint jp, MutableModifiable mixin, Object newValue) {
  Method correspondingGetter = getGetterFromSetter(((MethodSignature) jp.getSignature()).getMethod());
  boolean modified = true;
  if (correspondingGetter != null) {
    try {
      Object oldValue = correspondingGetter.invoke(jp.getTarget());

代码示例来源:origin: spring-projects/spring-framework

@Before("execution(void *.additionalMethod(*))")
  public void log(JoinPoint jp) {
    System.out.println("Before " + jp.getSignature().getName());
  }
}

代码示例来源:origin: spring-projects/spring-framework

@Before("methodExecution()")
  public void entryTrace(JoinPoint jp) {
    this.lastEntry = jp.toString();
  }
}

代码示例来源:origin: vector4wang/spring-boot-quick

@Before("logPointCut()")
  public void doBefore(JoinPoint joinPoint) throws Throwable {
    // 接收到请求,记录请求内容
    ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
    HttpServletRequest request = attributes.getRequest();

    // 记录下请求内容
    loggger.info("请求地址 : " + request.getRequestURL().toString());
    loggger.info("HTTP METHOD : " + request.getMethod());
    loggger.info("IP : " + request.getRemoteAddr());
    loggger.info("CLASS_METHOD : " + joinPoint.getSignature().getDeclaringTypeName() + "."
        + joinPoint.getSignature().getName());
    loggger.info("参数 : " + Arrays.toString(joinPoint.getArgs()));
//        loggger.info("参数 : " + joinPoint.getArgs());

  }

代码示例来源:origin: appium/java-client

@Before(EXECUTION_SEARCH)
public void beforeFindBy(JoinPoint joinPoint) throws Throwable {
  try {
    Object target =  joinPoint.getTarget();
    if (!WebElement.class.isAssignableFrom(target.getClass())) {
      listener.beforeFindBy(castArgument(joinPoint, 0), null, driver);
    } else {
      listener.beforeFindBy(castArgument(joinPoint, 0),
        castTarget(joinPoint), driver);
    }
  } catch (Throwable t) {
    throw getRootCause(t);
  }
}

代码示例来源:origin: appium/java-client

@Before(EXECUTION_SCRIPT)
public void beforeScript(JoinPoint joinPoint) throws Throwable {
  try {
    listener.beforeScript(String.valueOf(joinPoint.getArgs()[0]), driver);
  } catch (Throwable t) {
    throw getRootCause(t);
  }
}

代码示例来源:origin: octo-online/reactive-audit

@Before("call(* java.io.Reader+.read(..))")
public void read(JoinPoint thisJoinPoint)
{
  if (config.isDebug())
  {
    Reader reader = (Reader) thisJoinPoint.getTarget();
    config.logger.finest(
        thisJoinPoint.toString() + "  with " + FileTools.dumpChain(reader));
  }
  latency(HIGH, thisJoinPoint, (Reader) thisJoinPoint.getTarget());
}

代码示例来源:origin: zhangyd-c/springboot-learning

@Before("pointcut()")
  public void doBefore(JoinPoint point) throws NoSuchMethodException {
    //获取拦截的方法名
    Signature sig = point.getSignature();
    MethodSignature msig = null;
    if (!(sig instanceof MethodSignature)) {
      LOGGER.error("该注解只能用于方法");
      throw new IllegalArgumentException("该注解只能用于方法");
    }
    msig = (MethodSignature) sig;
    Object target = point.getTarget();
    //获取拦截方法的参数
    Method currentMethod = target.getClass().getMethod(msig.getName(), msig.getParameterTypes());
    //获取操作业务的名称
    BusinessLogAnnotation annotation = currentMethod.getAnnotation(BusinessLogAnnotation.class);
    String bussinessName = annotation.value();
    LOGGER.info("进入{}方法...", bussinessName);

  }
}

代码示例来源:origin: xautlx/s2jh4net

@Before("@annotation(com.entdiy.core.dao.router.RoutingDataSource)")
private void routingAdvice(JoinPoint point) {
  MethodSignature methodSignature = (MethodSignature) point.getSignature();
  RoutingDataSource datasource = methodSignature.getMethod().getAnnotation(RoutingDataSource.class);
  String customerType = datasource.value();
  logger.debug(" Routing to Datasource: {}", customerType);
  datasourceHolder.set(customerType);
}

代码示例来源:origin: octo-online/reactive-audit

@Before("call(* java.nio.Buffer.*(..))")
public void buffer_all(JoinPoint thisJoinPoint)
{
  config.logger.finest(thisJoinPoint.toString());
}
/*

代码示例来源:origin: shuzheng/zheng

@Before("execution(* *..controller..*.*(..))")
public void doBeforeInServiceLayer(JoinPoint joinPoint) {
  LOGGER.debug("doBeforeInServiceLayer");
  startTime = System.currentTimeMillis();
}

代码示例来源:origin: nice-swa/my-site

@Before("webLog()")
public void doBefore(JoinPoint joinPoint){
  startTime.set(System.currentTimeMillis());
  //接收到请求,记录请求内容
  ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
  HttpServletRequest request = attributes.getRequest();
  HttpSession session = request.getSession();
  // 记录下请求内容
  LOGGER.info("URL : " + request.getRequestURL().toString());
  LOGGER.info("HTTP_METHOD : " + request.getMethod());
  LOGGER.info("IP : " + request.getRemoteAddr());
  LOGGER.info("CLASS_METHOD : " + joinPoint.getSignature().getDeclaringTypeName() + "." + joinPoint.getSignature().getName());
  LOGGER.info("ARGS : " + Arrays.toString(joinPoint.getArgs()));
}

代码示例来源:origin: octo-online/reactive-audit

@Before("call(* java.io.InputStream+.available())")
public void available(JoinPoint thisJoinPoint)
{
  latency(LOW, thisJoinPoint, (InputStream) thisJoinPoint.getTarget());
}

代码示例来源:origin: appium/java-client

@Before(EXECUTION_CONTEXT)
public void beforeSwitchingToContext(JoinPoint joinPoint) throws Throwable {
  try {
    listener.beforeSwitchingToContext(driver, String.valueOf(joinPoint.getArgs()[0]));
  } catch (Throwable t) {
    throw getRootCause(t);
  }
}

相关文章

微信公众号

最新文章

更多

Before类方法