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

flash可以做网站百度一下网址是多少

flash可以做网站,百度一下网址是多少,中国建设银行复核网站,html网页导航栏代码前言 AOP编程在Java开发中是一个非常火热的话题,最著名的库为AspectJ Kotlin项目中,通过Gradle插件,也能够使用该库,这是我们下面讲解的重点 由于AspectJ的原理是在预编译阶段,通过插件修改代码,生成代理…
前言

AOP编程在Java开发中是一个非常火热的话题,最著名的库为AspectJ

Kotlin项目中,通过Gradle插件,也能够使用该库,这是我们下面讲解的重点

由于AspectJ的原理是在预编译阶段,通过插件修改代码,生成代理对象

属于编译阶段的功能,因为非常依赖编译工具的版本

这里用的版本是Gradle8.7,如果不兼容记得调整版本号

Gradle脚本代码,用的也是Gradle8.7+KotlinScript的语法,记得根据版本调整

引入插件依赖
pluginManagement {plugins {id("org.jetbrains.kotlin.jvm") version "1.9.23" apply falseid("io.freefair.aspectj.post-compile-weaving") version "8.7.1" apply false}
}dependencyResolutionManagement {repositoriesMode = RepositoriesMode.FAIL_ON_PROJECT_REPOSrepositories {mavenCentral()gradlePluginPortal()}
}
应用插件到模块
plugins {id("org.jetbrains.kotlin.jvm")id("io.freefair.aspectj.post-compile-weaving")
}dependencies {api("org.aspectj:aspectjrt:1.9.6")api("org.aspectj:aspectjweaver:1.9.6")
}
Kotlin代码
package com.code.kotlinfun main() {Good().doSomething()
}class Good {fun doSomething() {println("doSomething")}
}
AOP规则

插件会自动搜索带有@Aspect注解的文件

@Pointcut通过特征表达式,来指定切入点,即要拦截哪些方法

@Before @After指定切入方式,即在什么时机切入,方法执行前,还是方法执行后

其它更详细的注解,大家自己根据需要去了解,这里主要讲解集成和使用方式

package com.code.kotlinimport org.aspectj.lang.JoinPoint
import org.aspectj.lang.annotation.After
import org.aspectj.lang.annotation.Aspect
import org.aspectj.lang.annotation.Before
import org.aspectj.lang.annotation.Pointcut@Aspect
class AspectRule {@Pointcut("execution(* com.code.kotlin.Good.doSomething(..))")fun anyFunction() {}@Before("anyFunction()")fun beforeFunction(joinPoint: JoinPoint) {println("before function executed: $joinPoint")}@After("anyFunction()")fun afterFunction(joinPoint: JoinPoint) {println("after function executed: $joinPoint")}
}
运行结果
before function executed: execution(void com.code.kotlin.Good.doSomething())
doSomething
after function executed: execution(void com.code.kotlin.Good.doSomething())
优势分析

可以看到,简单引入和应用插件即可

AOP代码完全独立于原始代码,真正做到了代码解耦

非常适合对关键位置代码进行监听和修改的需求

注意事项

由于生成的代码依赖于Gradle插件

所以AOP规则修改后,如果代码没生效,可以尝试Reload一下Gradle脚本

另外,此插件和安卓编译插件,在实现方式上容易产生版本冲突

安卓项目需要使用AOP,建议使用其它插件,这个我们下一章会讲解

http://www.dinnco.com/news/62915.html

相关文章:

  • 网站cms在线识别seo优化排名公司
  • 深圳网站建设价钱上海已经开始二次感染了
  • 网站制公司搜索广告和信息流广告区别
  • 工程建设信息都在哪个网站发布廊坊seo排名收费
  • 建设商城网站的书籍钱注册商标查询官网入口
  • 南宁h5建站百度seo软件是做什么的
  • 国外免费推广网站厦门百度推广开户
  • 精品网站建设比较好软文推广怎么写
  • 荥阳做网站2023年5月疫情爆发
  • 门户网站制作定制广告投放这个工作难不难做
  • 网站建设公司的转型关键词优化排名平台
  • 淘宝客代理网站怎么做重庆网站seo技术
  • 网站建设进展推进表哪里有正规的电商培训班
  • 微网站模板建设的选择如何网络营销
  • 烟台建网站公司价格网络营销策划ppt范例
  • 网站访客统计代码摘抄一篇新闻
  • 无锡那家网络公司做网站好成都网络营销公司
  • 观澜小学 网站建设2345导航网址
  • 提高手机性能的黑科技软件百度seo推广计划类型包括
  • 给被k的网站做友链电商网站前端页面内容编写
  • 网站开发语言有什么要求百度投稿平台
  • 平台和网站有什么区别策划公司是做什么的
  • 怎么给网站做绿标百度关键词优化有效果吗
  • 江门手工外发加工网排名优化软件点击
  • 响应式网站底部怎么做上海网站营销seo方案
  • 台州免费建站成都达洱狐网络科技有限公司
  • 网站开发和软件开发哪个好杭州百度推广
  • 网络是干什么的杭州seo搜索引擎优化
  • 网站设计与制作b2b国际贸易平台
  • 策划书模板免费网站收录优化