【问题标题】:How to print access log without spring?如何在没有弹簧的情况下打印访问日志?
【发布时间】:2016-12-28 18:23:53
【问题描述】:

我真正想要的是 AOP,它在 spring 中得到了支持。但遗憾的是我的领导不允许我们使用弹簧。我们用 java、thrift 和 jdbc 编写了一个服务层。我曾经使用spring的方面来打印每个action中的访问日志。所以我现在不知道该怎么做。我尝试了一个名为jcabi-aspect 的插件,但它不起作用。而且我也没弄明白。
所以我想知道是否有什么可以帮助我做到这一点。

【问题讨论】:

  • 使用Filterdocs.oracle.com/javaee/5/api/javax/servlet/Filter.html创建你自己的拦截器来做访问日志,或者利用你的应用服务器提供的机制,例如,你可以使用ValveTomcat中进行访问日志.
  • Spring 代码可用,您只需研究代码以了解其工作原理。 String 下的行为很简单,如果不允许使用 Spring 库,我认为你应该遵循不同的路径。那是因为使用健壮的库比编写自己的库更安全,因为你可能有错误。特别是如果您不知道该怎么做。
  • jcabi-aspects 到底有什么问题?提交一个单独的问题,我会尽力帮助(我是它的开发人员之一)

标签: java logging aop


【解决方案1】:

您可以使用AspectJ,即

  • 比 Spring AOP 中实现的小型 AspectJ 语言子集更强大,
  • 速度更快,资源效率更高,因为它不需要/使用动态代理,
  • 可在任何 Java SE 应用程序中使用,无需任何框架,如 Spring 或 Java EE。

可以在here找到大量文档。

现在剩下的问题是您的领导是否会授予您使用 AspectJ 的权限。 ;-)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-11
    • 1970-01-01
    • 2013-11-23
    • 2018-06-30
    • 1970-01-01
    相关资源
    最近更新 更多