Hasor软件是一个体积轻量、简单便捷且面向生产环境而设计的 Java 应用开发框架,主要核心设计目标是为开发用户能够提供一个简单的交互接口,让开发用户可以能够在此基础上灵活的构建自己的应用程序,无论是应用类程序还是框架类工具都可使用Hasor这款Java应用开发框架;Hasor的最大特色是有着自己一套完整的扩展体系,无论您软件是一般的应用工程,还是开发工具框架类项目,都可使用Hasor这款Java应用开发框架,Hasor内置有多种应用开发模板,其中包括数据聚合引擎、分布式RPC框架、分布式协调框架、服务配置接口等,有需要的用户可以能够自行下载。

软件功能
1、Core 具备 Aop 并兼容 JSR-330 的Bean容器框架
支持IoC、Aop的Bean容器。
Module + ApiBinder 统一的插件入口。
无需开发读取自定义xml配置文件。
支持 JSR-330
2、Web 轻量化 Web MVC 框架
能够提供 RESTful 风格的 mvc 开发方式。
能够提供请求验证接口、验证支持场景化。
模版渲染接口,支持各种类型的模版引擎。
内置文件上传组件,无需引入任何jar包。
3、能够提供了JDBC操作和完整事务管理能力
能够提供 JDBC 操作接口 90% 兼容 SpringJDBC。
与 Spring 一样,能够提供七种事务传播属性的控制。
支持多种事务控制方式包括:手动事务控制、注解式声明事务、TransactionTemplate模板事务。
支持多数据源(不支持分布式事务)
4、tConsole 专注基于 Telnet 命令行交互框架
支持监听本地端口能够提供 Telnet 交互的界面。
支持基于标准输入输出构建交互控制台的能力。
利用 tConsole 可以能够轻松构建命令工具包。
5、RSF 分布式 RPC 服务框架
支持容灾、负载均衡、集群;
支持动态发布、卸载
支持服务分组、分版本
多种调用方式:点对点、分布式轮询、泛化调用、同步、异步、回调、接口代理。
支持虚拟机房、隐式传参、服务路由、Telnet 等高级功能。
6、DataQL 服务聚合查询引擎
层次结构:产出具有数据的层次结构的查询结果。
弱类型:不要求声明任何形式的类型结构。
轻逻辑:表达式、取值、条件分支、lambda和函数。
编译运行:查询的执行是基于编译结果的。
扩展代码片段:DataQL 查询中混合其它语言的语句。
软件特色
“微内核+插件” 简单、小巧、功能强大、使用简单。
COC原则的最佳实践,‘零’配置文件。
合理的整体架构规划,即是小框架也是大平台。
各部分全部独立,按需使用,绝不臃肿。
能够提供一个支持IoC、Aop的Bean容器
Bean 编辑能力,比如给 Bean 添加不存在的属性和接口实现。
基于 Module + ApiBinder 机制能够提供统一的插件入口
特色的 Xml 解析器。让你无需二次开发无需配置,直接读取自定义xml配置文件
官方教程
引入依赖
最新版本
截止到目前为止 Hasor 的最新版本为:4.2.1,下面以 maven 为例。
这个网站会能够提供给您各种依赖管理框架的引入配置,支持:Maven、Gradle、SBT、Ivy、Grape、Leiningen、Buildr
https://mvnrepository.com/artifact/net.hasor

引入依赖包之后通过一行代码即可创建 Hasor
1AppContext appContext = Hasor.create().build();
启动模式
Hasor 的启动有三种模式,所有模式都在 net.hasor.core.Hasor.Level 类中定义。
Hasor 默认运行在 Full 模式中,无需特意指定。
明确指定 Hasor 启动模式的方法如下。

Tiny 模式下,相当于设置 HASOR_LOAD_MODULE 和 HASOR_LOAD_EXTERNALBINDER 两个环境变量为 false。
Module
在 Hasor 里一切的开始都是 net.hasor.core.Module 接口,您需要编写一个类实现这个接口,接口中只有一个方法需要您实现。下面这段代码就是我们实现的第一个 Module

接着在启动的中加载这个 Module
Hasor.create().build(new FirstModule());
如果有多个 Module 那么都指定进来
Hasor.create().build(new UserModule(),new ClassModule() ...);
另外还可以能够在 Module 中加载其它 Module

转至元数据结尾由 赵永春创建, 最后修改于八月 12, 2020转至元数据起始什么是IoC?
“依赖注入(DI)”有时候也被称为“控制反转(IoC)”本质上它们是同一个概念。具体是指,当某个类调用另外一个类的时候通常需要调用者来创建被调用者。但在控制反转的情况下调用者不在主动创建被调用者,而是改为由容器注入,因此而得名。这里的“创建”强调的是调用者的主动性。而依赖注入则不在需要调用者主动创建被调用者。
举个例子通常情况下调用者(ClassA),会先创建好被调用者(FunBean),然后在调用方法callFoo中调用被调用者(FunBean)的foo方法:

使用了依赖注入的情况恰恰相反,调用者(ClassA)事先并不知道要创建哪个被调用者(FunBean)。ClassA 调用的是被注入进来的 FunBean,通常我们会为需要依赖注入的 对象留有 set 方法,在调用 callFoo 方法之前是需要先将 funBean 对象通过 setFunBean 方法设置进来的。
例如:

严格意义上来说注入的形式分为两种,它们是 “构造方法注入” 和 “set 属性注入”。
我们经常听到有第三种注入方式叫 “接口注入”,其实它只是 “set 属性注入” 的一种接口 表现形式。
构造方法注入
这种方式是指被注入的对象通过构造方法传入,例如下面代码:

属性注入
是指被注入的对象通过其 get/set 读写属性方法注入进来,例如:

接口注入
是指通过某个接口的 set 属性方法来注入,大家可以能够看到其本质还是 **属性注入**。只不过调用者(ClassA),需要实现某个注入接口。

上面我们讲解了什么是依赖注入,并且举例了一些依赖注入的表现形式。那么下一章我们来看看 Hasor 如何帮助我们你进行依赖注入。
版权声明:Hasor(应用开发框架)所展示的资源内容均来自于第三方用户上传分享,您所下载的资源内容仅供个人学习交流使用,严禁用于商业用途,软件的著作权归原作者所有,如果有侵犯您的权利,请来信告知,我们将及时撤销。
软件下载信息清单:
驱动文件名称 | 发布日期 | 文件大小 | 下载文件名 |
---|---|---|---|
Hasor(应用开发框架)安装包 | 2024年11月5日 | 3.3 MB | Hasorrj.zip |
软件评论