`
j2eetop
  • 浏览: 64384 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

开源框架Tiny之内容组成

 
阅读更多
源码快照:
https://git.oschina.net/tinyframework/tiny
上手之前,默认已经熟悉Maven和Git,对于Maven和Gig相关问题,女生请问谷哥,男生请问度娘,他二位的细致耐心一定会让你满意的。
install之前需要进行环境准备,确认你的机器可以联得上外网,或者有好用的Maven代理。
请确认在编译环境中存在jdk1.5和1.6以上版本。
在你的Maven settings.xml中增加如下配置:
在<profiles>中添加下面的内容,注意:文件路径要改成与你的实际情况一致。

1
2
3
4
5
6
7
<profile>
<id>JAVA_CONFIG</id>
<properties>
<JAVA_1_5_JAVAC>C:\Program Files\Java\jdk1.5.0_22\bin\javac</JAVA_1_5_JAVAC>
<JAVA_1_6_JAVAC>C:\Program Files\Java\jdk1.6.0_45\bin\javac</JAVA_1_6_JAVAC>
</properties>
</profile>




在<activeProfiles>段增加下面的内容:

1
<activeProfile>JAVA_CONFIG</activeProfile>




然后,请在根pom所在目录执行如下命令:

1
<strong>maven install -DskipTests</strong>





正常情况下,maven要下载一些东西,然后开始安装,安装成功就表示环境构建完毕。
更多内容请看本人博客。

Tiny框架10分钟入门,用于在10分钟之内使读者对Tiny框架的组成有个概要了解。
  • 应用配置框架
    用于提供系统配置加载与分发,同时提供默认配置及应用级配置两套配置方案,并以应用级配置方案为主,也就是说应用级的配置参数可以覆盖默认配置。
    这样做有个好处,就是如果不配置应用级配置,那么默认配置也可以上你玩得很好;如果提供了应用级配置,那么可以对系统、框架、模块的原有行为进行个性化调整。在个性化及便捷化方面提供了一个兼顾。如果是低级用户,那么你就傻瓜式使用,啥配置也别改,有可能不是最优的,但一定也是相当不错的;如果是高级客户,那么你可以对各种参数进行深入配置。

  • 应用启动
    不管是普通控制台应用还是Web应用,都有一个启动过程。应用启动用于加载配置,分发配置,启动文件扫描,启动插件框架,等等处理。这个一般使用默认实现即可,当然,如果要深入调整启动方式,也可以自行实现。

  • 文件扫描
    Tiny框架采用了扔进去不用管的的组合模式,实际上是因为有文件扫描器进行扫描、处理,才得以实现的。可以说文件扫描是模块化的基石。

  • 插件框架
    插件框架主要解决启动及停止,还有要解决启动及停止时序。第一版的插件框架是支持热插拔的,但是由于要考虑的问题及多,投入产出比太不经济,再一个由于Tiny框架是SOA架构模式的,因此可以通过集群当中不同的机器进行分别维护来解决热插拔的问题,因此现在改成非热插拔的方式了。

  • 通用事件处理框架
    通用事件处理插件用于对外提供统一的基于服务的访问方式,而不用关心服务的真正生产者在哪里,所以也就无所谓本地服务和远程服务。
  • 服务加载框架
    服务加载框架用于把在本地运行环境中的服务加载起来并在通用事件处理框架中进行注册。
  • 缓冲框架
    通过查找是否存在缓冲的实现方案,如果有,且加载并启动之。
  • UI引擎
    UI引擎用于查找当前运行环境中存在的UI组件,并加载之,并提供JS合并及CSS合并等相关处理。同时提供了强大的基于布局和页面的展现支持。同时,高度的组件化,使得复用别人的组件和自己开发组件一样方便。同时还提供了JS,CSS加载时序的处理,使得开发人员不必再关心这些引入顺序问题。
  • JSP运行引擎
    JSP运行引擎是由Jasper引擎改进而来,主要的改进目的是解决模块化的问题,也就是说把JSP放入Jar包的支持。
  • 字典框架
    字典框架用于通过各种加载方式加载系统中用到的字典项并对外提供字典服务。
  • DBF文件读取
    目前已经支持除了M,B,G类型之外的所有字段类型,由于暂时没有需求,因此写入DBF文件后续再添加。
  • INI文件读写
    支持INI文件的读写,同一段中支持属性名重复
  • 上下文支持
    提供了强大的上下文支持,支持上下文嵌套。正有了上下文的支持,才使得变量的复制仅在跨节点时才会发生。节省了系统开销,内存占用,简化了框架实现难度。
  • 文档生成框架
    用于生成各种类型文本内容,比如:xml,比如:源代码,比如:word,pdf,excel等等。当然,它只是个框架,里面已经内嵌了一些组件,但是真正要用得好,还是需要进行组件扩展的。
  • VFS虚拟文件系统
    用于统一对各种异构文件来源的文件进行统一化操作的封装,支持本地文件,URL文件,FTP文件,ZIP,JAR文件等的统一化访问,当然也可以通过扩展支持更多的文件来源。
  • 基础组件
    主要包含线程组,对象池,优先队列等实现。
  • 元数据加载框架
    支持定义各种元数据并加载之,元数据主要包含类型定义(屏蔽不同数据库及编程语言之差异),业务类型定义(使得业务类型有含义),标准字段定义(业务中只能使用标准字段)等等,通过这些元数据的定义,可以方便的进行跨数据库,跨编程语言运行(只适合流程编排式开发)。
  • 数据库访问框架
    Tiny框架本身不拒绝任何ORM方案,但是内嵌也增加了一个小的跨数据库数据访问方案,不用写POJO,不用写DAO,直接就可以完成各种数据库处理。并且可以与Hibernate,iBatis等框架进行集成。
  • 应用安装框架
    应用安装框架用于解决软件升级过程中的数据库表结构调整,初始化数据插入等等处理,不论经历了多少个版本变迁,都可以使得应用无工作量自动升级完毕。有过大型工程实践经验的人,会知道这个功能可以带来多少便捷及节点多少开发及维护工作量。
  • Xml及Html解析
    内嵌高性能Xml及Html解析,尤其是在遍历方面性能比一般解析器高太多,非常适合一次解析之后需要进行大量遍历的场景。同时,对于中文标签及属性有良好支持,有非常强的容错性,即使Html不符合规范,大多数据情况也可以正确解析。最差的情况也会给出一个不正确的Dom,而不是抛错退出。
  • 网络爬虫支持
    资源获取集成了HttpClient,Html解析采用内嵌html解析方案,上手简单,可以避免多次抓取,死循环等等,在普通 应用场景应用已经足够了。
  • 流程引擎
    支持组件任意自行扩展,支持面向对象特性,如:流程继承、节点覆盖重写等,同时提供灵活的异常捕获机制,同时还支持流程重入,也就是说流程的执行不一定非从流程的第一个节点起执行。正因为流程可重入的特性,基于其提供了页面流的支持,工作流引擎理论上也是可以的,不过还没有开始。
  • 校验框架
    提供前后台校验规则一次性编写,前后台同时生效。
  • Web层框加
    这一次提供的内容太多,不一定说全。支持web.xml不用修改方案,这样大大有利于模块化及后期的维护。提供了页面流支持。提供了rewrite支持。提供了文件上传支持。提供了安全过滤。提供了No session支持。提供了Bigpipe支持。提供了压缩输出支持。提供了对象组装支持。
  • DBRouter
    基于JDBC3和JBC4规范的数据库集群及分库分表方案,提供数据库集群、分库、分表等方面的强力支持,支持各种数据库。在限定之外的SQL语句都可以支持。对上层应用影响最少的数据库集群及分库分表方案。
  • 分布式计算框架
    提供了基于职介所、工头、工人、工作模式的多机协作分布式计算功能。支持任务分解、合并,支持工作序列化,永不丢失等等诸多特性。
分享到:
评论

相关推荐

    TinyOS源码说明-1

    TinyOS是开源的操作系统,专为无线传感器网络(Wireless Sensor Networks, WSN)设计,其源码提供了深入了解操作系统如何在资源受限的硬件上运行的机会。这篇文档将深入解析TinyOS系统源码,并重点关注"TinyOS源码...

    yolov4-tiny.conv.29.zip

    YOLOv4-tiny的网络结构主要由以下几个部分组成: 1. 输入层:接收输入图像,通常设置为416x416像素。 2. 卷积层:进行特征提取,通过不同大小的卷积核捕捉不同尺度的信息。 3. CSPBlock:这是从CSPNet引入的一种结构...

    TinyOS源码说明-2

    TinyOS是专为无线传感器网络(Wireless Sensor Networks, WSNs)设计的一款开源操作系统,其设计理念在于提供轻量级、可扩展且节能的软件框架。TinyOS源码的分析和理解对于WSN领域的研究人员至关重要,因为它允许...

    tiny-dnn-master.zip

    Tiny-DNN 是一个轻量级、头文件式的深度学习框架,专注于提供深度神经网络(DNN)的底层实现。这个开源项目"tiny-dnn-master.zip"包含的就是Tiny-DNN的源代码,对于想要深入理解DNN工作原理以及如何在实际中实现它的...

    darknet版YOLOv3官方权重文件yolov3-tiny.conv.15

    Darknet是一个开源的深度学习框架,主要用于计算机视觉任务,包括图像分类、物体检测等。在这个压缩包文件中,包含了Darknet实现的YOLOv3模型的几个关键权重文件,让我们一一解析: 1. **darknet53.conv.74**: 这个...

    关于tinyOs的学习资料

    TinyOS 提供了一个轻量级、模块化且可扩展的框架,使开发者能够高效地构建这些低功耗网络节点的软件。 TinyOS 主要由以下几个关键组件构成: 1. **MSP430 Microcontroller**: TinyOS 针对Texas Instruments的MSP430...

    tinyos培训PPT

    TinyOS是一个开源的操作系统,专门设计用于传感器网络和物联网设备。这个简单的培训课程旨在为初学者提供一个理解TinyOS及其核心组件的平台。在这个培训中,我们将深入探讨nesc(Network Embedded System ...

    TOSSIM.rar_TOSSIM_TOSSIM Tinyos-2.x_tinyos_toss

    【标题】"TOSSIM.rar_TOSSIM_TOSSIM Tinyos-2.x_tinyos_toss" 提供了一个关于 TinyOS-2.x 框架中的 TOSSIM 模拟器的深入理解。TOSSIM 是一个强大的工具,用于模拟和测试 TinyOS 应用程序,特别是针对无线传感器网络...

    基于TinyOS与嵌入式技术的智能家居控制系统.pdf

    TinyOS作为一种专门为无线传感器网络设计的开源操作系统,以其低功耗和模块化特点而受到广泛关注。福州大学物理与信息工程学院的李春萍和陈新共同撰写的《基于TinyOS与嵌入式技术的智能家居控制系统》论文,详细探讨...

    Tiny Printer-开源

    《开源项目Tiny Printer:在Eclipse中打印源代码的艺术》 在编程的世界里,源代码是程序员的心血结晶,有时我们需要将这些智慧的痕迹转化为纸质形式,以便于查阅、分享或者保留。Tiny Printer是一个开源项目,它...

    1. 腾讯物联网操作系统TencentOS-Tiny项目开源协同的探索与实践 - 汪礼超.pdf

    TencentOS Tiny的总体目标是成为腾讯物联网生态链的重要组成部分,推动物联网设备的互联互通,为云侧大数据平台提供流量入口,并服务好物联网生态链客户的差异化需求,促进产业互联网的发展。 未来规划方面,...

    【游戏】Tiny Wings.zipIOS应用例子源码下载

    Cocos2d是一个开源的2D游戏开发框架,它简化了游戏开发过程,提供了丰富的图形渲染、物理模拟、动画和事件处理等功能。在源码中,你可以学习到如何使用Cocos2d进行场景管理、精灵(Sprite)创建、动画序列...

    基于HGE写的游戏框架,大大节省开发时间

    基于HGE的游戏框架,通常会包含以下几个核心组成部分: 1. **初始化与管理**:框架会提供一套初始化和关闭系统的接口,包括加载配置、设置窗口、初始化硬件设备等,让开发者无需关注底层细节。 2. **资源管理**:...

    tiny_framework

    在tiny_framework中,视图可能是由PHP模板文件组成,这些模板文件可以嵌入PHP代码以动态生成HTML内容。 5. **数据库交互**:大多数Web应用都需要数据库存储和检索数据。tiny_framework可能包含了一个数据库抽象层,...

    深度--Deep Learning Tutorial.rar_deep_deep learning_tiny5gw

    同时,开源深度学习框架,如TensorFlow、PyTorch和Keras,为研究人员和开发者提供了便利的工具,降低了深度学习的入门门槛。 总结来说,"深度--Deep Learning Tutorial"这本书很可能涵盖了深度学习的各个方面,从...

    smart210触摸屏tslib移植

    在嵌入式系统开发中,触摸屏的使用已经成为人机交互的重要组成部分。TSlib(TouchScreen library)是一个通用的触摸屏驱动框架,它为各种触摸屏设备提供了统一的接口,使得应用程序可以方便地处理来自不同触摸屏的...

    Web Components Framework - Web组件框架.zip

    Omi框架是腾讯开源的一款轻量级Web Components框架,它使用JSX语法,支持状态管理、事件处理和生命周期管理等功能。Omi框架的特点包括: - **Tiny Size**:Omi非常小巧,核心库只有几千行代码,优化了加载速度和...

    tiny-flexbox-grid-system:微小的SCSS Flexbox网格系统

    5. **优势与适用场景**:Tiny Flexbox Grid System适合小型项目和快速原型设计,尤其在需要快速搭建响应式布局但又不希望引入大型框架时,它是理想的选择。同时,对于熟悉SCSS的开发者来说,自定义和扩展这个系统会...

    IR.rar_ir_id_code_5dh

    在这个名为"IR.rar_ir_id_code_5dh"的压缩包文件中,我们可以推测其内容可能与使用nesc(Network Embedded System Configuration)和tinyOS这两个开源操作系统进行红外通信相关的代码或配置文件有关。 nesc是专为...

    mixim-2.3传感网仿真框架

    无线传感器网络由大量微型、低功耗的设备组成,这些设备通常具有感知、计算和通信能力,广泛应用于环境监测、军事侦察、工业控制等多个领域。Mixim-2.3 的设计目的是为了帮助研究人员和工程师高效地模拟WSNs的行为,...

Global site tag (gtag.js) - Google Analytics