麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JSP > 正文

JSP 自定義注解及記錄操作日志

2024-09-05 00:23:06
字體:
來源:轉載
供稿:網友

 

JSP 自定義注解及記錄操作日志

Spring的配置文件

<aop:aspectj-autoproxy />

日志攔截器

package com.vem.interceptor;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Pointcut;import org.aspectj.lang.reflect.MethodSignature;import org.springframework.stereotype.Component;import com.vem.entity.BussAnnotation; @Aspect @Component public class LogInterceptor {     @Pointcut("execution(* com.vem.service..*.*(..))")   public void aApplogic() {      }      /**    * 環繞通知 用于攔截指定內容,記錄用戶的操作    */   @Around(value = "aApplogic() && @annotation(annotation) &&args(object,..) ", argNames = "annotation,object")   public void interceptorApplogic(ProceedingJoinPoint joinPoint,       BussAnnotation annotation, Object object) throws Throwable {     System.out.println("模塊名稱moduleName:" + annotation.moduleName());     System.out.println("操作名稱option:" + annotation.option());     String methodName = joinPoint.getSignature().getName(); System.out.println("方法名methodName:" + methodName);         MethodSignature methodSignature = (MethodSignature) joinPoint.getSignature();     String[] strings = methodSignature.getParameterNames();         joinPoint.proceed();         Object[] arguments = joinPoint.getArgs();  //獲得參數列表    if(arguments.length<=0){       System.out.println(methodName+"方法沒有參數");     }else{      for(int i=0;i<arguments.length;i++){      System.out.println(strings[i]+" : "+arguments[i]+" : ");     }     }   } } 

自定義注解

@Retention(RetentionPolicy.RUNTIME) @Target({ElementType.METHOD}) @Documented public @interface BussAnnotation {   //模塊名   String moduleName() default "";   //操作內容   String option() default ""; } 

接口實現

寫在service

@BussAnnotation(moduleName="人員管理",option="添加用戶") public void testDemo1(PageData pd) throws Exception{ }

junit測試類

package com.vem.entity;import javax.annotation.Resource;import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;import com.vem.service.data.DemoService;import com.vem.util.PageData;  @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration( {"classpath:spring/ApplicationContext.xml" })public class AopTest {   @Resource(name = "demoService") public DemoService demoService;    @Test   public void testAopAddUser1(){    PageData pd = new PageData();   pd.put("name", "zhangzexing");   pd.put("age", "21");   pd.put("passward", "123456");   try {  demoService.testDemo2(pd); } catch (Exception e) {  // TODO Auto-generated catch block  e.printStackTrace(); }  } }  

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!


注:相關教程知識閱讀請移步到JSP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产精品性夜天天视频 | 国产呻吟 | wwwxxx视频| 精品一区二区久久久久久按摩 | 亚洲国产网站 | 久久国产精品一区 | 在线观看av国产一区二区 | 九九热精品在线视频 | 91av资源在线 | 国产一区视频观看 | 免费黄色欧美视频 | 欧美一级片在线 | 久久影院国产精品 | 日本网站在线播放 | 羞羞的视频在线免费观看 | 久久久一区二区精品 | 一级做人爱c黑人影片 | 国产五区| 国产精品午夜未成人免费观看 | 久久久久久久久久亚洲精品 | 毛片在线视频在线播放 | 欧美一级淫片a免费播放口 91九色蝌蚪国产 | 国产精品久久久久久久久久10秀 | 一区二区三区视频在线观看 | 99国产精品自拍 | 精品国产一区二区三区久久久 | 国产免费让你躁在线视频 | 欧美一级视频网站 | 久久精品免费国产 | 国产高清美女一级毛片久久 | 午夜精品久久久久久毛片 | 人成免费网站 | 看91视频 | 久久国产免费 | 亚洲成a人在线 | 国产精品视频在 | 国产噜噜噜噜噜久久久久久久久 | 欧美wwwsss9999 | 黄色一级片毛片 | 蜜桃视频在线免费播放 | 久久久久91视频 |