bboss是一个非常不错的ioc框架,功能类似于spring ioc和google guice,本文结合一个简单的案例来介绍bboss ioc的用法,让你快速的了解和上手使用bboss ioc。
[size=large][b]1.首先在工程中引入bboss ioc[/b][/size]
[b]maven坐标:[/b]

<dependency>    <groupId>com.bbossgroups</groupId>    <artifactId>bboss-core</artifactId>    <version>5.0.3.5</version></dependency>

[b]gradle坐标:[/b]

compile group: 'com.bbossgroups', name: 'bboss-core', version: '5.0.3.5'

[b][size=large]2.编写组件实现[/size][/b]
org.gradle.IOCExample

package org.gradle;

import org.slf4j.Logger;import org.slf4j.LoggerFactory;

public class IOCExample {  private static final Logger logger = LoggerFactory.getLogger(IOCExample.class);  private String name ; private String sex;   private String homepage;  public void init(){       logger.debug("init bean............."); }

   public String exampMethod(){      return new StringBuilder().append("name = ").append(name).append(",")                .append("sex = ").append(sex).append(",")                .append("homepage = ").append(homepage).toString();    }

}

[size=large][b]3.定义外部属性配置-config.properties[/b][/size]

name=杰克homepage=http://www.bbossgroups.com

[size=large][b]4.配置bboss ioc[/b][/size]

编写bboss ioc配置文件:exampile.xml,放到工程resources目录

<!--    bboss ioc配置实例--><properties>    <!--    导入外部属性文件,bboss ioc外部属性参考文档:    http://yin-bp.iteye.com/blog/2325602    -->    <config file="config.properties"/>    <!--    name="examplebean" 指定组件名称    class="org.gradle.IOCExample" 指定组件实现类    f:name="${name:jack}" 组件属性name注入,值配置在config.properties文件中,如果外部属性文件中没有配置name则使用默认值jack    f:homepage="${homepage}" 组件属性homepage注入,值配置在config.properties文件中    f:sex="男" 属性sex注入    init-method="init" 组件初始化方法    -->    <property name="examplebean"              class="org.gradle.IOCExample"              f:name="${name:jack}"              f:homepage="${homepage}"              f:sex="男"              init-method="init"    />

</properties>

[size=large][b]5.测试用例[/b][/size]

package org.gradle;

import org.frameworkset.spi.BaseApplicationContext;import org.frameworkset.spi.DefaultApplicationContext;import org.junit.Test;

/** * Created by 1 on 2017/6/25. */public class TestInvoke {    @Test    public void test(){        //初始化ioc容器        BaseApplicationContext context = DefaultApplicationContext.getApplicationContext("example.xml");        //获取组件实例        IOCExample example = context.getTBeanObject("examplebean",IOCExample.class);        //调用组件方法        String message = example.exampMethod();        System.out.println("message:"+message);    }}

[size=large][b]6.构建和运行[/b][/size]
在构建和运行之前先安装并配置好gradle环境,gradle的安装和配置参考文档:
[url]http://yin-bp.iteye.com/blog/2313145[/url]
下载示例:[url=http://www.bbossgroups.com/tool/download.htm?fileName=testioc.zip]下载[/url]
解压下载的文件,后切换到cmd,在testioc目录下执行命令:
gradle releaseVersion

[img]http://dl2.iteye.com/upload/attachment/0126/5063/4faedb78-2d31-3018-ad5e-40afa45be9ae.png[/img]
然后切换到目录build/dist下面,运行指令:start.bat就可以看效果了:

[img]http://dl2.iteye.com/upload/attachment/0126/5065/8f51b054-4ed0-3e17-a3ba-2d55d4f4ca56.png[/img]
[img]http://dl2.iteye.com/upload/attachment/0126/5067/f4f3425c-c29a-3dd6-88a6-0a6cf1477990.png[/img]

bboss ioc快速入门教程相关推荐

  1. BIML 101 - ETL数据清洗 系列 - BIML 快速入门教程 - 序

    BIML 101 - BIML 快速入门教程 做大数据的项目,最花时间的就是数据清洗. 没有一个相对可靠的数据,数据分析就是无木之舟,无水之源. 如果你已经进了ETL这个坑,而且预算有限,并且有大量的 ...

  2. ​HealthKit开发快速入门教程大学霸内部教程

    ​HealthKit开发快速入门教程大学霸内部教程 ​ ​ 国内第一本HealthKit专向教程.本教程详细讲解iOS中,如何使用HealthKit框架开发健康应用.最后,本教程结合HealthKit ...

  3. Apple Watch开发快速入门教程

     Apple Watch开发快速入门教程  试读下载地址:http://pan.baidu.com/s/1eQ8JdR0 介绍:苹果为Watch提供全新的开发框架WatchKit.本教程是国内第一本A ...

  4. 指示灯组与3个复位按钮的介绍Arduino Yun快速入门教程

    指示灯组与3个复位按钮的介绍Arduino Yun快速入门教程 ​1.4.2  指示灯组 指示灯组的放大图如图1.5所示. 图1.5  指示灯组 各个指示灯对应的功能如下: q  RX:对应于0号端口 ...

  5. 游戏控制杆OUYA游戏开发快速入门教程

    游戏控制杆OUYA游戏开发快速入门教程 1.2.2  游戏控制杆 游戏控制杆各个角度的视图,如图1-4所示,它的硬件规格是本文选自OUYA游戏开发快速入门教程大学霸: 图1-4  游戏控制杆各个角度的 ...

  6. Arduino Yun的主要部件介绍选自Arduino Yun快速入门教程

    Arduino Yun的主要部件介绍 1.4.1  主要部件 Yun的主要部件如图1.4所示. 图1.4  Arduino Yun的主要部件 在Yun小小的板子上集成了两颗处理器.一个是ATmega3 ...

  7. 认识AndEngine选自Android 2D游戏引擎AndEngine快速入门教程

    认识AndEngine什么是AndEngine 随着Android手机.平板的盛行,Android下的游戏也不断的变得火热.而对于游戏开发有兴趣的同学们,应该也想要学习开发游戏.虽说游戏开发的引擎较多 ...

  8. OUYA游戏开发快速入门教程1.2OUYA的硬件规格

    OUYA游戏开发快速入门教程1.2OUYA的硬件规格 从官网上购买回来的OUYA产品,包含游戏主机.游戏控制杆.说明书.电源线.HDMI线.电源线和电池,如图1-2所示.本节就来简要介绍下,游戏主机和 ...

  9. Android 2D游戏引擎AndEngine快速入门教程

    Android 2D游戏引擎AndEngine快速入门教程 介绍:AndEngine是一款知名的Android 2D游戏引擎.该引擎代码开源,并且可以免费使用.本书详细讲解如何使用AndEngine引 ...

最新文章

  1. 近期Freecodecamp问题总结
  2. VR技术怎么落地,行业应用怎么挖掘,来江苏虚拟现实发展大会侃侃
  3. sqlite3之基本操作(二)
  4. 2021.02.01 Visual QA论文阅读
  5. k8s与CICD--将drone部署到kubernetes中,实现agent动态收缩
  6. The Best Vacation CodeForces - 1358D(贪心+尺取)
  7. Javascript s08
  8. leetcode468. 验证IP地址
  9. WebSocket实践
  10. 自己动手写Docker系列 -- 5.2实现查看运行中的容器
  11. hdu5033 Building 单调队列
  12. iOS /clang:-1: linker command failed with exit code 1 (use -v to see invocation) 报错
  13. EXCEL 制作下拉选项,限制输入内容范围
  14. 利用FFT成功实现拓扑识别(五)--关于频谱泄露
  15. ad7606中文资料_16位ADC数据采集模块AD7606(原理图、中文数据手册、例程等)
  16. win7计算机不能设置双屏怎么回事,win7怎么设置双屏显示?Win7双屏显示设置的方法...
  17. 日语(五十元音)_01
  18. 湖仓一体:从零开始搭建数据仓库
  19. wdcp mysql configure error_install Error: mysql configure err
  20. 基于java springboot租房平台设计,公寓租赁系统

热门文章

  1. Error: unknown command “push“ for “helm“ Helm安装push插件
  2. 一、HTML、HTTP、web综合问题
  3. Word VBA自动排版(2)-通过自动查找替换去除叠字
  4. wIN 7 一键清理垃圾
  5. sqlmap绕过空格过滤方法
  6. 图形界面 I: 在METATRADER 4终端中使用不同类型的程序来测试界面库 (第五章)
  7. 关于HTML中常用选择器
  8. pda通用扫描app_智能仓储盘点——PDA扫码盘点APP真正实现“轻松盘点”!
  9. redisclient工具个人理解
  10. 使用less为长篇输出分页--用Enki学Linux系列(12)