bboss项目下载列表 在sourceforge访问地址为:
https://sourceforge.net/project/showfiles.php?group_id=238653
前两节介绍了bboss aop框架的两种依赖注入方式:属性依赖注入和构造函数依赖注入。这一节介绍一下bboss aop框架防止循环依赖注入的功能。
在介绍防止循环依赖注入之前,我们首先介绍一下java组件中的属性循环引用的情况。所谓循环引用就是说组件之间相互引用,导致循环引用,例如:
对象A引用了对象B,对象B引用对象C,对象C引用了对象A,这样就形成了一种循环引用的场景。
使用bboss aop框架的依赖注入功能时,应用避免出现业务组件的循环依赖注入的情况,bboss aop能够有效的防止这种情况的出现,一旦开发人员配置了这种场景,应用程序通过com.chinacreator.spi.BaseSPIManager的getProvider方法获取业务组件的实例时将抛出异常:
throw new CurrentlyInCreationException("loop inject error the inject context path is [A>B>C>A]");
明确地提示出现了A>B>C>A的循环依赖注入。
这种情况的配置示例如下:
<?xml version="1.0" encoding='gb2312'?>
<manager-config>
<manager id="a" singlable="true">
<provider type="DB"
class="com.chinacreator.spi.reference.A" />
<reference fieldname="b" refid="b" />
</manager>
<manager id="b" singlable="false">
<provider type="DB"
class="com.chinacreator.spi.reference.B" />
<reference fieldname="c" refid="c" />
</manager>
<manager id="c" singlable="false">
<reference fieldname="a" refid="a" />
<provider type="DB"
class="com.chinacreator.spi.reference.C" />
</manager>
</manager-config>
一般情况下只有在依赖的注入的setter方法和构造函数中出现循环引用应该防止外,情况出现循环引用是允许的。
分享到:
相关推荐
官方版本,亲测可用
官方版本,亲测可用
4. **AOP(面向切面编程)**:BBoss MVCDemo支持AOP,可以实现如事务管理、日志记录、权限控制等功能,提高代码的复用性和可维护性。 5. **国际化与本地化**:框架内置了国际化和本地化支持,使得应用可以根据用户...
【Bboss国际化实践】主要涉及了软件系统的全球化适应性改造,以便支持多语言环境。以下是对这个主题的详细解析: 1. **界面元素国际化**: - 界面文字:所有用户可见的文字都需要进行翻译,确保不同语言环境下的...
安全性方面,bboss会话共享通过在客户端基于cookie机制存储sessionid,并设置cookie的HttpOnly属性来防止XSS攻击窃取sessionid,通过设置Secure属性并在HTTPS环境下传输来防止sessionid被窃取。同时,还提供会话信息...
bboss框架集成了AOP/iOC、MVC、持久化标签库、RPC、事件处理、Bean-XML序列化等多种功能。本项目基于bboss框架构建了数据采集ETL工具、流批一体化Stream工具、Elasticsearch客户端工具和WebSession共享框架等应用。
本实例是一个基于bboss es spring boot starter的demo maven工程,可供spring boot项目集成bboss elasticsearch rest client参考 展示了通过spring boot管理单集群功能和管理多集群功能 单集群测试用例:...
集成bboss和Elasticsearch时,首先需要在项目中引入bboss的依赖,并配置Elasticsearch的相关连接信息,如集群名称、节点地址等。然后可以通过bboss提供的API进行索引创建、数据插入、查询、更新、删除等操作。 4. ...
BBoss(全称为bbossgroups)是一个专为企业级J2EE应用设计的开源框架,它为Java开发者提供了一系列强大的工具和服务,以简化Web应用程序的开发过程。该框架旨在提高开发效率,降低维护成本,同时保持高度的灵活性和...
4. **BBoss 安装**: 获取 BBoss 的 JAR 包,将其添加到项目的类路径中。 5. **配置BBoss**: 根据项目需求,配置 BBoss 的连接参数,如集群地址、端口等。 **四、开发入门** 1. **创建索引**: 使用 BBoss 提供的 API...
springboot集成ElasticsearchBboss调用Elasticsearch的案例分享
在Java开发中,依赖注入(Dependency Injection,简称DI)是一种重要的设计模式,它能提高代码的可测试性和可维护性。BBoss是一个轻量级的企业级应用开发框架,提供了IOC(Inversion of Control)功能,使得对象之间...
6. **会话超时与退出**:为了防止会话固定攻击,BBoss框架会设置会话超时机制。此外,用户可以通过点击退出按钮来清除会话,此时`SYSAuthenticateFilter`会确保所有相关的认证信息从会话中移除。 通过阅读`...
3. `bboss-util-5.5.0.jar`和`bboss-persistent-5.5.0.jar`:这是BBoss框架的核心组件,提供了许多实用工具类和持久化操作支持,如数据库连接、事务管理等,为Elasticsearch的数据导入提供底层支持。 4. `...
**bboss-datatran** 是一个由 **bboss** 社区开源的高效数据处理工具,专注于数据采集、数据清洗转换以及数据入库等任务。它实现了流批一体化的数据处理能力,使得用户能够灵活地应对实时和批量的数据处理场景。在...
【bboss-db-elasticsearch-tool-master_java_】是一个Java ORM(对象关系映射)框架,它在功能上超越了MyBatis,提供了对多种数据库的广泛支持,包括MySQL、Oracle、PostgreSQL、SQLServer、DB2、DM以及MongoDB。...
从最初的依赖容器到后来的分布式缓存方案,直至现在的跨容器、基于NOSQL的解决方案,session管理经历了多代的进化。第一代到第五代的演变展示了技术的不断革新,包括了对性能、可扩展性、容错性以及与各种容器的兼容...
官方版本,亲测可用