`
wx1569063608
  • 浏览: 22751 次
文章分类
社区版块
存档分类
最新评论

用groovy写的类在spring中无法初始化为bean的原因

 
阅读更多

在spring项目中用了groovy写一个service,但是启动的时候报注入不成功的错误,直接注入该类而不是接口,此时需要用cglib方式使用动态代理,但是当我配置了用cglib生成动态代理之后还是没法注入。最后:给这个service加了个接口,就可以注入成功了。分析原因:初步判断是因为使用groovy时当把它翻译为class文件后,走的是jdk自己的动态代理,而不是cglib,所以必须要实现接口,这个时候才可以注入

转载于:https://my.oschina.net/yejw/blog/3096727

分享到:
评论

相关推荐

    spring-beans-groovy源码

    在`spring-beans-groovy`中,Groovy的Bean定义被编译为一个`GroovyBeanDefinitionReader`实例,该类负责读取Groovy脚本并转换为Spring的`BeanDefinition`对象。`BeanDefinition`是Spring容器中的核心概念,它包含了...

    spring 5.2.9 07 源码分析-spring的bean工厂准备工作 测试用例

    在Spring框架中,Bean工厂是核心组件之一,它负责管理所有Bean的生命周期,包括实例化、配置、装配以及销毁。本章将详细分析Spring 5.2.9版本中Bean工厂的准备工作,特别是通过测试用例来理解其实现细节。 在Spring...

    Spring-Reference_zh_CN(Spring中文参考手册)

    6.8.1. 在Spring中使用AspectJ来为domain object进行依赖注入 6.8.1.1. @Configurable object的单元测试 6.8.1.2. 多application context情况下的处理 6.8.2. Spring中其他的AspectJ切面 6.8.3. 使用Spring IoC来...

    spring源码剖析

    在寻找bean的实现类过程中,Spring使用了反射机制。对于抽象类或者接口,Spring会根据bean定义中的class属性找到其实现类,然后通过`Class.newInstance()`或者`Constructor.newInstance()`创建实例。这个过程在`...

    Spring中文帮助文档

    6.8.1. 在Spring中使用AspectJ进行domain object的依赖注入 6.8.2. Spring中其他的AspectJ切面 6.8.3. 使用Spring IoC来配置AspectJ的切面 6.8.4. 在Spring应用中使用AspectJ加载时织入(LTW) 6.9. 更多资源 7...

    Spring Reference Core Technologies

    - **Groovy Bean Definition DSL**:Spring支持使用Groovy语言编写配置脚本来定义bean,这种方式更加灵活且易于维护。 - **1.2.2 实例化容器** 实例化IoC容器是使用Spring框架的第一步。可以通过`...

    groovy学习

    在实际应用中,Spring的Groovy支持还体现在Spring Boot的初始化器、Spring Shell的命令行交互,以及Spring Data的查询语言——Gorm等。这些都充分利用了Groovy的简洁和动态性,为开发者带来了便利。 总的来说,学习...

    Spring中ApplicationContext和beanfactory区别.rar

    在Spring框架中,ApplicationContext和BeanFactory是两种不同的bean容器,它们各自有其特性和应用场景,理解二者的区别对于深入学习和使用Spring至关重要。 首先,BeanFactory是Spring中最基础的bean管理容器,它...

    Spring注解IOC所用的jar包

    Spring的注解IOC允许开发者在不使用XML配置的情况下,通过在类或方法上添加注解来声明依赖关系。这极大地简化了代码结构,提高了可维护性。以下是Spring注解IOC的核心概念和关键注解: 1. `@Component`:这是Spring...

    spring-core.pdf

    - **1.6.1 生命周期回调**: Spring支持在Bean的生命周期中执行自定义的方法,包括初始化和销毁方法。 - **初始化回调**: 通过`InitializingBean`接口或者在Bean定义中指定`init-method`属性来定义初始化方法。 - *...

    Spring Reference - Core Technologies.pdf

    Spring允许自定义作用域,开发者可以创建自己的作用域以及在自定义作用域中使用Bean。 1.6 自定义Bean的性质 Spring允许自定义Bean的生命周期回调、依赖以及作用域等。 1.6.1 生命周期回调 Spring管理Bean的生命...

    spring-framework-4.0.6.RELEASE

    此外,还引入了条件注解(Conditional Annotation),允许开发者在特定条件下才加载或初始化bean,增强了灵活性。 在Web层,Spring MVC在4.0版本中引入了更多控制器相关的注解,如@PathVariable、@RequestParam等,...

    spring4 中文API

    - **Groovy Bean Definition DSL**:支持使用Groovy语言编写Bean定义。 - **核心容器改进**:增强了核心容器的功能,如增加了对新的配置元数据的支持。 - **常规Web改进**:加强了Web开发方面的能力,包括对HTTP/2的...

    spring core官方文档.pdf

    - 单个Bean定义在Spring IoC容器中只有一个实例。 - **原型作用域(Prototype)** - 每次请求都会创建一个新的实例。 - **单例Bean与原型Bean的依赖** - 单例Bean可以依赖于原型Bean,但反过来则不行。 - **...

    编译好的Spring的eclipse工程!Spring源码

    6. **Groovy支持**:Eclipse中安装Groovy插件后,可以直接导入和使用这个Spring工程,这是因为Spring支持Groovy作为其配置语言,使得配置文件更简洁,代码更易读。 7. **Spring Boot**:虽然这个压缩包不直接包含...

    spring-framework-4-reference

    另外,新增了对Java EE 6和Java EE 7的支持,并引入了Groovy Bean Definition DSL,使得使用Groovy语言定义bean更加方便。核心容器的改进,如增加了新的注解,改进了bean的初始化和销毁过程。常规Web应用也得到了...

    spring boot实战.pdf高清无水印

    第6章 在Spring Boot中使用Grails 93 6.1 使用GORM进行数据持久化 93 6.2 使用Groovy Server Pages定义视图 98 6.3 结合Spring Boot与Grails 3 100 6.3.1 创建新的Grails项目 100 6.3.2 定义领域模型 ...

    Spring官方文档

    - 除了XML,Spring还支持基于Java的配置,使用`@Bean`注解声明Bean,以及Groovy DSL,提供更简洁的配置语法。 8. 自动装配: - 自动装配是IoC的一个重要特性,容器可以自动识别Bean之间的依赖关系,并尝试填充...

    Spring 2.0 开发参考手册

    6.8.4. 在Spring应用中使用AspectJ Load-time weaving(LTW) 6.9. 其它资源 7. Spring AOP APIs 7.1. 简介 7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点实施 7.2.3. AspectJ切入点表达式 7.2.4. ...

Global site tag (gtag.js) - Google Analytics