类似 Spring 的开源框架 JCute

Apache
Java 查看源码»
跨平台
2018-04-15
看-野生程序猿

JCute 是什么

jcue是一套功能类似Spring的开源框架,基于JDK1.6开发,实现了Spring的大部分功能,但用法相对Spring要简洁,整体采用注解方式,代码清晰,功能灵活,用户也可扩展基于xml文件或json等配置文件的注入方式。 jcute除了包含基本的IOC/AOP等功能外,还提供了基于注解的插件扩展机制,用户可以像使用spring boot一样扩展jcute,为jcute创建更丰富的插件来满足业务需求。 jcute内置了ShutDownHook,Cache基本插件。

JCute 有哪些注解

注解功能描述
@Configuration配置类标注注解,标注此注解对象也会被实例化且可以注入
@ImportConfig配置文件导入注解
@Autowired动态注入注解
@Component注入标记注解,标记此注解的类将被实例化
@ComponentScan      包扫描注解,可在配置了@Configuration的类上标记此注解
@Destory销毁方法标记注解每标记此注解容器销毁前调用
@Initial初始化方法标记注解,属性及对象注入结束后首先调用此注解
@Interceptor拦截器注解
@Order排序注解,可与@Destory,@Initial,@Interceptor配合使用
@Property属性注入注解,用来注入配置文件中的属性只支持默认值
@Pluggable自定义插件扩展注解

功能使用

由于功能介绍篇幅较大,此处不一一列举,有兴趣的朋友可以到https://github.com/jcute/jcute-samples 查看,此sample项目罗列了jcute的大部分功能。

@Configuration
public class TestBootStrap{

public static void main(String[] args){
JCuteApplication.run(TestBootStrap.class);
}

}

jcute-samples代码介绍

包名功能描述
com.jcute.sample.aspectAOP相关功能使用案例
com.jcute.sample.bootJCuteBoot使用案例
com.jcute.sample.config配置注入案例
com.jcute.sample.construct自定义构造函数注入案例
com.jcute.sample.define.fromclass使用class实例Bean案例
com.jcute.sample.define.frominstance使用object实例Bean案例
com.jcute.sample.define.frommethod使用method实例Bean案例
com.jcute.sample.destory销毁方法使用案例
com.jcute.sample.initial初始化方法使用案例
com.jcute.sample.junitJUnit无缝集成案例
com.jcute.sample.service普通service及接口实例案例
com.jcute.sample.scope自定义Bean的Scope
com.jcute.sample.plugin.custom自定义插件机制
com.jcute.sample.plugin.cache缓存插件使用案例
com.jcute.sample.plugin.shutdownhook友好退出插件使用案例

如何使用

  • maven

      com.github.jcute jcute-core 0.0.5
  • gradle

     compile group: 'com.github.jcute', name: 'jcute-core', version: '0.0.5'
  • java

     需要手动下载jar添加到项目的classpath中
     下载地址:https://oss.sonatype.org/service/local/repositories/releases/content/com/github/jcute/jcute-core/0.0.5/jcute-core-0.0.5.jar

插件介绍

  • EnableShutDownHook 插件 需要添加@EnableShutDownHook注解,此插件实现优化退出功能,可为注解配置value设置是否等待程序结束

  • EnableCacheManager 插件 需要添加@EnableCacheManager注解,开启缓存机制,额外提供@Cacheable,@CacheClear,@CacheEvict,@CachePut,@CacheKey等注解,如果你使用过spring的cache功能,相信你会对此比较熟悉。具体使用案例参照jcute-samples项目中的使用案例

的码云指数为
超过 的项目
加载中

评论(2)

写给三月
写给三月
这轮子造的我给99分,多一份怕你骄傲!
看-野生程序猿
看-野生程序猿 软件作者
666

暂无资讯

暂无问答

暂无博客

返回顶部
顶部