AOP实现日志的打印与存储

AOP实现日志的打印与存储

1、啥是aop啊?

面向切面编程,我们在开发过程中经常会用到日志和数据库关闭等一系列操作,而这些是与我们业务逻辑代码无关的操作,把这些混在业务的实现上会影响我们开发,所以aop出现了。它将一个程序看成一个大汉堡,把青菜(日志等)抽取出来全部放到一个盘(类)中,要吃汉堡时可以将青菜(日志等)放在培根(业务)前后,你想多吃青菜(使用日志等功能)就可以多吃,不想就不放。而且不仅可以放到一个汉堡中,其它口味的汉堡也可以放

2、为啥使用aop啊?

​ 当然是方便操作啊,框架的出现都是让程序员少写代码的,那些重复的代码可以提取出来,要用时织入(“放到”)到业务代码前后就行了,你想,如果一个系统开始没有日志功能,我都快开发完了,然后项目经理说,ok,咱要增加日志的功能,那这时候咋办呢?总不能一个一个类的加代码吧,这不仅破坏了“开-闭”原则,也增加了秃头的可能啊(加班)。

3、aop的具体实现(不虚)

​ 目标:使用aop将用户访问的信息都给我存储起来(估计很多公司都会这样干吧,细思极恐!!!)

  1. 创建Maven项目(懂的都懂)

  2. 添加pom依赖(加就完事了alg)

    <!-- 定义依赖的版本号 -->
    <properties>
        <junit.version>4.12</junit.version>
        <spring.version>5.2.9.RELEASE</spring.version>
        <pagehelper.version>5.1.8</pagehelper.version>
        <servlet-api.version>2.5</servlet-api.version>
        <dubbo.version>2.8.4</dubbo.version>
        <zookeeper.version>3.4.7</zookeeper.version>
        <zkclient.version>0.1</zkclient.version>
        <mybatis.version>3.4.5</mybatis.version>
        <mybatis.spring.version>1.3.1</mybatis.spring.version>
        <mybatis.paginator.version>1.2.15</mybatis.paginator.version>
        <mysql.version>5.1.32</mysql.version>
        <druid.version>1.0.9</druid.version>
        <commons-fileupload.version>1.3.1</commons-fileupload.version>
        <jackson.version>2.9.5</jackson.version>
    
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>
    <!-- 定义依赖 -->
    <dependencies>
        <!-- Spring -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
       
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值