栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在春季使用AOP进行日志记录?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在春季使用AOP进行日志记录?

Spring使我们使用AOP非常容易。这是一个简单的日志记录示例:

@Aspectpublic class MyLogger {    private Logger log = Logger.getLogger(getClass());    @After("execution(* com.example.web.HomeController.*(..))")    public void log(JoinPoint point) {        log.info(point.getSignature().getName() + " called...");    }}

然后只需配置您的applicationContext.xml(或等效文件):

    <aop:aspectj-autoproxy>        <aop:include name="myLogger"/>    </aop:aspectj-autoproxy>    <bean id="myLogger" />

您会在MyLogger类中注意到我

@After
在方法上方指定的内容。这被称为建议,它基本上指定了将在有问题的方法 之后 调用此“
log”方法。其他选项包括
@Before, @Around, @AfterThrowing

该表达式

"execution(*com.example.web.HomeController.*(..))"
称为切入点表达式,它指定我们要定位的对象(在这种情况下,是HomeController类的所有方法)。

PS

aop
名称空间(
xmlns:aop="http://www.springframework.org/schema/aop"
)和架构位置(取决于版本)将需要添加到顶部的applicationContext.xml中。这是我的设置:

<beans xmlns="http://www.springframework.org/schema/beans"       xmlns:aop="http://www.springframework.org/schema/aop"       xmlns:context="http://www.springframework.org/schema/context"       xmlns:tx="http://www.springframework.org/schema/tx"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd">


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/412132.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号