- 浏览: 695592 次
- 性别:
- 来自: 长沙
文章分类
- 全部博客 (364)
- quick start (57)
- bboss aop (43)
- bboss mvc (48)
- bboss persistent (96)
- bboss taglib (30)
- bboss event (10)
- bbossgroups (52)
- bboss (32)
- bboss会话共享 (17)
- bboss rpc (7)
- bboss 国际化 (5)
- bboss 序列化 (9)
- bboss cxf webservice (8)
- bboss hessian (3)
- bboss 安全认证SSO (15)
- bboss 工作流 (6)
- 平台 (18)
- bboss quartz (3)
- 杂谈 (5)
- 大数据 (1)
- bboss elastic (24)
- bboss http (1)
- bboss kafka (1)
- Elasticsearch Scroll和Slice Scroll查询API使用案例 (1)
最新评论
-
qianhao123:
...
采用gradle构建和发布bboss方法介绍 -
qianhao123:
[img][/img]
采用gradle构建和发布bboss方法介绍 -
yin_bp:
欢迎大家参与working
高性能elasticsearch ORM开发库使用介绍 -
qq641879434:
万分感谢
bboss 持久层sql xml配置文件编写和加载方法介绍 -
yin_bp:
qq641879434 写道怎么设置配置文件 可以查看执行的S ...
bboss 持久层sql xml配置文件编写和加载方法介绍
本系列文件之二 介绍bboss aop框架中依赖注入(ioc)功能的使用方法
本系列文章适用于bboss-aop-1.0.5,下载地址:
https://sourceforge.net/project/showfiles.php?group_id=238653&package_id=290546&release_id=658454
bboss aop提供两种方式的依赖注入:
属性依赖注入
构建函数依赖注入
另外还举例说明了bboss aop框架是怎么防止循环依赖注入的。下面逐一说明。
- 属性依赖注入
首先定义两个组件接口和组件实现
组件com.chinacreator.spi.reference.A和组件接口com.chinacreator.spi.reference.AI
组件com.chinacreator.spi.reference.B和组件接口com.chinacreator.spi.reference.BI
组件A中引用了组件接口BI的一个引用,另外A还引用了一个普通的java对象com.chinacreator.spi.reference.Test的变量test。
我们通过bboss aop框架来管理组件A和组件B,并且通过属性注入的方式初始化A对BI的引用属性,初始化Test变量。
假设上述类接口都已经定义好,组件也已经实现。
我们直接来看看怎么来编写bboss aop配置文件:
<?xml version="1.0" encoding='gb2312'?>
<manager-config>
<manager id="a" singlable="false">
<!--
基于数据库的用户管理实现
属性描述:
type:代表数据存储的类型,例如DB,LDAP,ACTIVEDIRECTORY等等
class:实现类代码
-->
<provider type="DB"
class="com.chinacreator.spi.reference.A" />
<reference fieldname="b" refid="b" />
<reference fieldname="test" class="com.chinacreator.spi.reference.Test"/>
</manager>
<manager id="b" singlable="false">
<!--
基于数据库的用户管理实现
属性描述:
type:代表数据存储的类型,例如DB,LDAP,ACTIVEDIRECTORY等等
class:实现类代码
-->
<provider type="DB" class="com.chinacreator.spi.reference.B" />
</manager>
</manager-config>
可以将上述文件存储在一个名叫manager-provider-reference.xml文件中放在工程的src目录下,同时将该文件通过manager-provider.xml主文件导入即可,manager-provider.xml,文件添加以下行即可:
<managerimport file="manager-provider-reference.xml" />
配置文件写好后就可以通过com.chinacreator.spi.BaseSPIManager组件来获取AI的实例对象了:
try {
AI a = (AI)BaseSPIManager.getProvider("a");
System.out.println("a:" + a);
System.out.println("a:" +a.getB());
System.out.println("a.getTest():" +a.getTest());
} catch (SPIException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
附带几个类的定义:
package com.chinacreator.spi.reference;
public class A implements AI{
private BI b;
private Test test;
public void setB(BI b) {
this.b = b;
}
public BI getB() {
return b;
}
public void setTest(Test test) {
this.test = test;
}
public Test getTest() {
return this.test;
}
}
package com.chinacreator.spi.reference;
public interface AI {
public void setB(BI b) ;
public BI getB() ;
public void setTest(Test test);
public Test getTest();
}
package com.chinacreator.spi.reference;
public class B implements BI{
private CI c;
public void setC(CI c) {
this.c = c;
}
public CI getC() {
return c;
}
}
package com.chinacreator.spi.reference;
public interface BI {
public void setC(CI c);
public CI getC() ;
}
package com.chinacreator.spi.reference;
public class Test {
}
评论
发表评论
-
bboss ioc快速入门教程
2017-08-13 11:28 1276bboss是一个非常不错的ioc框架,功能类似于spr ... -
bboss ioc配置文件中使用外部属性文件介绍
2016-09-20 11:35 1145bboss ioc配置文件中使用外部属性文件介绍 与spri ... -
bboss与spring中配置和引用bboss数据源和bboss dao组件方法说明
2016-08-10 16:04 918首先在项目中导入bboss 持久层包: maven坐标 & ... -
bboss ioc提供的组件初始化工具类介绍
2016-03-18 16:17 738bboss ioc提供的组件初始化工具类介绍 bboss i ... -
扩展bboss ioc语法实现自定义的ioc依赖注入功能
2015-01-20 23:08 1331bboss ioc配置语法简洁而严谨,提供了强大的依赖注入功能 ... -
bboss序列化cglib代理对象方法介绍
2014-06-22 15:14 1162本文介绍bboss序列化cglib代理对象方法。经过cglib ... -
bboss自定义类对象序列化机制介绍
2014-05-26 23:32 1471bboss自定义类对象序列 ... -
bboss将一个组件同时发布为webservice,hessian,http三种服务方法介绍
2014-04-12 14:31 1657bboss将一个组件同时发布为webservice,hessi ... -
bboss发布apache cxf 2.7.6服务和定义客户端服务实例可能产生冲突解决办法
2014-03-22 23:16 1091bboss发布apache cxf 2.7.6服务和定义客户端 ... -
bboss 发布和使用hessian服务方法介绍
2013-02-25 23:21 2114hessian是一款性能非常不错的RPC通讯组件,最近抽空将b ... -
bboss quartz组件全攻略
2013-01-27 13:31 2622bboss quartz组件全攻略 本 ... -
bboss aop拦截器使用简介
2012-11-29 23:20 1209bboss aop拦截器使用简介, ... -
bboss ioc容器之间组件引用方法简介
2012-08-04 15:09 1337bboss ioc容器之间组件引用方法简介。我们可以在ioc容 ... -
Rest协议框架-bboss rpc
2012-08-03 12:51 1356restful风格rpc服务协议rest,定义的语法如下: ... -
解决cxf+bboss发布的webservice缺少<wsdl:types>和<wsdl:message>标签的问题
2012-06-19 10:11 1793cxf+bboss发布webservice服务 ... -
开源工作流引擎activiti与bboss整合使用方法浅析
2012-05-01 11:35 5224本文介绍开源工作流引擎activiti与bboss ioc框架 ... -
bboss aop/ioc组件配置语法诠释
2012-03-01 18:38 2206这篇文章全面介绍bboss ioc 配置语法,希望对 ... -
bboss aop/ioc依赖注入功能介绍
2012-02-12 14:40 1769bboss aop 3.5及后续版本中改进的ioc依赖注入功能 ... -
Bboss和xstream序列化/反序列化性能对比
2011-10-13 00:18 1985Bboss和xstream序列化/反序列化性能对比 本报告分别 ... -
bboss 组件容器的使用方法浅析
2011-08-20 00:21 1666本文重点介绍bboss 中的4大组件容器的特点及使用方法 4 ...
相关推荐
官方版本,亲测可用
在Java开发中,依赖注入(Dependency Injection,简称DI)是一种重要的设计模式,它能提高代码的可测试性和可维护性。BBoss是一个轻量级的企业级应用开发框架,提供了IOC(Inversion of Control)功能,使得对象之间...
官方版本,亲测可用
【Bboss国际化实践】主要涉及了软件系统的全球化适应性改造,以便支持多语言环境。以下是对这个主题的详细解析: 1. **界面元素国际化**: - 界面文字:所有用户可见的文字都需要进行翻译,确保不同语言环境下的...
2. **视图(View)**:视图层是用户界面,BBoss MVCDemo允许开发者使用JSP、FreeMarker、Velocity等模板引擎来创建动态页面。视图与控制器通过请求参数进行交互,展示由控制器处理后传递的数据。 3. **控制器...
安全性方面,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. ...
2. **数据库操作**:BBoss提供了便捷的数据访问层(DAO),支持SQL动态生成、事务管理以及多种数据库的兼容性,使得数据库操作变得简单且高效。 3. **服务治理**:框架内置了服务注册与发现机制,可以实现微服务...
2. **bboss elasticsearch开发入门教程.wmv**: 通过实例演示,讲解如何使用BBoss进行索引操作、数据插入、查询和更新,帮助初学者快速上手。 **六、资料阅读** "说明.txt" 文件可能包含了关于这些教程的详细步骤和...
springboot集成ElasticsearchBboss调用Elasticsearch的案例分享
**bboss-datatran** 是一个由 **bboss** 社区开源的高效数据处理工具,专注于数据采集、数据清洗转换以及数据入库等任务。它实现了流批一体化的数据处理能力,使得用户能够灵活地应对实时和批量的数据处理场景。在...
BBoss安全认证过滤器是Java Web开发中一种用于实现用户身份验证和权限控制的重要组件。在Web应用程序中,过滤器(Filter)是Servlet规范的一部分,它允许开发者在请求到达目标Servlet或JSP之前进行预处理,以及在...
【bboss-db-elasticsearch-tool-master_java_】是一个Java ORM(对象关系映射)框架,它在功能上超越了MyBatis,提供了对多种数据库的广泛支持,包括MySQL、Oracle、PostgreSQL、SQLServer、DB2、DM以及MongoDB。...
2. `jackson-databind-2.9.8.jar`:Jackson是JSON处理库,`databind`模块实现了将Java对象映射到JSON和反向映射的功能,对于Elasticsearch的数据导入和导出非常关键。 3. `bboss-util-5.5.0.jar`和`bboss-...
它遵循Servlet 2/3规范API,并提供了创建、修改、销毁、查询和监控session的功能。bbosssession支持灵活可扩展的序列化机制,并依赖于分布式缓存技术,如Redis或Mongodb。通过Session存储服务,bbosssession能够实现...
环境要求JDK要求:JDK 1.7+ Elasticsearch版本要求:1.X,2.X,5.X,6.X,7.x,+ Spring Booter 1.x,2.x,+从源代码构建首先从获取源代码然后转到目录bboss-elastic-tran下的cmd窗口并运行gradle build命令: ...