jcue是一套功能类似Spring的开源框架,基于JDK1.6开发,实现了Spring的大部分功能,但用法相对Spring要简洁,整体采用注解方式,代码清晰,功能灵活,用户也可扩展基于xml文件或json等配置文件的注入方式。 jcute除了包含基本的IOC/AOP等功能外,还提供了基于注解的插件扩展机制,用户可以像使用spring boot一样扩展jcute,为jcute创建更丰富的插件来满足业务需求。 jcute内置了ShutDownHook,Cache基本插件。
注解 | 功能描述 |
---|---|
@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); } }
包名 | 功能描述 |
---|---|
com.jcute.sample.aspect | AOP相关功能使用案例 |
com.jcute.sample.boot | JCuteBoot使用案例 |
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.junit | JUnit无缝集成案例 |
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项目中的使用案例
问题内容: 我是Java开发人员。是否有一些适用于Java的Django / Rails- Ruby框架?我不喜欢为我做的每个项目创建管理面板。一次又一次地做同样的事情很无聊。另外,对于我的新项目,我的截止日期很短,我想使用某种Java框架来加快开发速度。 问题答案: 最近,我发现了一个看起来非常像django的框架。它称为playframework,您可以在这里找到它: http://playf
这是一款类似Twitter登陆框效果的插件。 在线演示:http://aext.net/example/twitterlogin/
问题内容: 我正在寻找提供以下内容的C ++数据库缓存框架: 通过某种伪语言(宏/模板)生成对象/表表示 在需要时通过键从数据库检索对象 LRU缓存 立即和延迟更新对象更新数据库(通过getter / setter方法) 问题答案: 尝试使用LiteSQL和Hiberlite,看看它们是否对您有用。
一、前言 关于开源框架这块,其实主要是针对自己项目中使用到的框架进行准备。从使用,到使用场景、优缺点以及源码实现都需要逐一掌握理解。这一部分是向面试官展示自己水平与能力的一个重要部分,所以要着重准备。 针对开源框架,该部分整理了自己在做项目过程中使用到的几个框架。大多都是从网上找的一些大佬的文章,深入浅出,着重讲述源码实现,可以帮助自己更好的理解。 二、目录 OkHttp解析 Retrofit解析
查看此问题 https://www.zhihu.com/question/388237379 几乎都是广告 请问有类似 draw.io 开源免费好用的 PDF 编辑器吗?
问题内容: 我在一家主要由Java和.NET技术人员组成的商店工作。在讨论新的解决方案和体系结构时,我们经常会在尝试比较两个阵营之间使用的各种技术,框架,API等时遇到阻力。似乎每个营地对彼此的了解都不多,我们最终将苹果与橘子进行了比较,而忘记了蒲式耳。 在研究主题时,我发现了这一点:Java-> .Net粗略等效项 这是一个不错的列表,但还不够详尽,并且缺少关键的.NET 3.0技术和其他一些花