当前位置: 首页 > 知识库问答 >
问题:

使用AOP在Spring中配置Java

郎睿
2023-03-14

这个问题是关于Spring中的Java config。是否可以用Java代码替换下面的声明

<servlet>
    <servlet-name>Spring MVC Dispatcher Servlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            /WEB-INF/secure-app-context.xml
        </param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

其中:secure-app-context.xml

  <beans xmlns="http://www.springframework.org/schema/beans"
    ...
    http://www.springframework.org/schema/aop/spring-aop-3.1.xsd">

    <aop:aspectj-autoproxy />

    <mvc:annotation-driven>
        <mvc:message-converters register-defaults="false">
        <bean class="org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter" />
    <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" />
            </mvc:message-converters>
        </mvc:annotation-driven> 

        <context:component-scan base-package="com.abc.secure.service" />

        <bean id="securityAspect" class="com.abc.secure.service.Secure" />
    </beans>

共有1个答案

韦胜泫
2023-03-14

您可以通过使用WebApplicationInitializer(在本例中不需要web.xml)很好地实现这一点

请看下面的帖子:

纯基于Java的配置如何配置Spring MVC?

 类似资料:
  • 这是一个已知的问题,因为Spring AOP使用的是基于代理的方法,该方法不会“看到”同一个类中的内部调用。显然我可以通过使用AspectJ而不是Spring AOP来解决这种情况。如果我没有理解错的话,它可以从Spring内部进行配置。从我的发现来看,我应该包含注释来配置Spring使用AspectJ而不是自己的AOP。不幸的是,这没有帮助,在添加注释之后,没有发生对被注释的方法的拦截。 Spr

  • 我有一个Spring Framework4应用程序,它使用Hibernate4.3.8作为JPA提供程序。我想使用Hibernate过滤器,因此我需要启用它们。我想在应用程序中全局地做到这一点,我试图用Spring AOP做到这一点。这个想法是,我可以编写一个方面,在每次创建/获取会话时启用过滤器,就像这个问题和这个问题一样。 我已经将和依赖项添加到我的项目中(使用Maven)。我添加了以下方面。

  • 我对Spring Security framework非常陌生,尤其是ACL。经过几个小时的阅读,我想我已经掌握了开始保护我的应用程序所需要做的大部分事情。 然而,有些事情让我感到困扰:虽然很容易找到关于如何读取ACL权限的用法描述(例如通过@preauthorize),但当您想要创建和持久化这些权限时,它开始变得混乱。 那我该怎么办呢?专业人士做得怎么样?我是否应该尝试在创建/删除ACL条目的自

  • 我正在使用Spring 3.1.1版的应用程序中工作,现在我需要为其添加一些方面。这些方面是用aspectj语言编写的,没有注释。我已经阅读了Spring docs第8.8章,但我正在努力使其工作。 我的spring配置如下所示: 在我的pom中,是一个Maven项目,我有spring aop、aspectjrt和aspectjweaver作为依赖项。 我的问题是,当启动应用程序时,我得到了一个

  • 本文向大家介绍Spring AOP AspectJ使用及配置过程解析,包括了Spring AOP AspectJ使用及配置过程解析的使用技巧和注意事项,需要的朋友参考一下 这篇文章主要介绍了Spring AOP AspectJ使用及配置过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 AspectJ是一个基于Java语言的AOP框架,Spr

  • 问题内容: 我正在读一本书,其中谈到在Spring AOP中启用AspectJ支持。 以下是从书中摘录的一段: 要在Spring IoC容器中启用AspectJ注释支持,只需在bean配置文件中定义一个空的XML元素aop:aspectj-autoproxy。然后,Spring将为与AspectJ方面匹配的任何bean自动创建代理。 对于在应用程序设计中不可用或未使用接口的情况,可以依靠CGLIB