OpenOLAT开发

    xiaoxiao2023-10-29  177

    2019/5/26

    src\main\java\org\olat\_spring\mainContext.xml

    这是OpenOLAT的Spring主配置文件,其中导入了其他的Spring配置文件。包括如下的Spring配置文件:

    src\main\java\org\olat\core\_spring\mainCorecontext.xml

    在这个配置文件中配置了org.olat.core.CoreSpringFactory、org.olat.core.gui.render.velocity.VelocityModule(初始化方法init)、org.springframework.scheduling.quartz.CronTriggerFactoryBean、org.springframework.scheduling.quartz.JobDetailFactoryBean

    CoreSpringFactory用于加载资源和Spring Bean,从xml文件生成应用上下文。一般不要直接使用这个类,而是在xml文件中或用autowire注入。这个类应用了工厂方法模式。

    VelocityModule的init方法调用了VelocityHelper.getInstance()。VelocityHelper应用了单例模式,VelocityHelper的init方法创建VelocityEngine实例ve和Properties实例p,设置 p的一些属性,用p初始化ve。VelocityHelper的merge方法根据上下文和主题对Velocity模板进行渲染。

     

    2019/5/25

    OpenOLAT用到了很多软件开发工具,下面对这些工具进行一些简单介绍:

    Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。Lucene是一套用于全文检索和搜寻的开源程式库,由Apache软件基金会支持和提供。Lucene提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻。在Java开发环境里Lucene是一个成熟的免费开源工具。就其本身而言,Lucene是当前以及最近几年最受欢迎的免费Java信息检索程序库。人们经常提到信息检索程序库,虽然与搜索引擎有关,但不应该将信息检索程序库与搜索引擎相混淆。Quartz是一个完全由java编写的开源作业调度框架。Apache ActiveMQ是Apache软件基金会所研发的开放源代码消息中间件;由于ActiveMQ是一个纯Java程序,因此只需要操作系统支持Java虚拟机,ActiveMQ便可执行。OpenMeetings是一个多语言可定制的视频会议和协作系统。它支持音频、视频,能让你查看每个与会者的桌面。OpenMeetings还包含一个白板,通过白板可以导入各种格式的图片和涂鸦。infinispan是一个在Apache2.0开源协议下所开发的,基于内存来进行键值对存储的分布式存储工具,并且其数据格式可以完全自定义。它既可以作为一个Java库进行使用,也可以通过一系列主流的远程协议方式(HotRod、REST、Memcached 和 WebSockets)来提供独立的服务。与此同时,它还支持很多高级功能诸如事务机制、事件机制、查询以及分布式处理等。跨wiki链接(英语:Interwiki links)是指向其他项目的页面的链接,使用前缀内部链接样式。跨wiki链接可以链接到(例如)维基百科、维基教科书、维基新闻等的页面或你需要的不同语言的wiki项目。JAMWiki是使用Java/JSP实现的Wiki引擎。SeleniumJUnitMockito流式断言器AssertJArquillian n 可让你在远程或者嵌入式的容器里测试业务逻辑,同时可作为一个压缩包发布到容器中,并通过客户端来进行交互测试。Arquillian 是一个可以方便的在现有类基础上扩展测试用例,基于 JUnit。Graphene 项目的目的是使用类型安全的 API 进行 Ajax 测试,是 Selenium 项目的扩展。Dumbster是一个非常简单的虚拟SMTP服务器,设计用于单元和系统测试发送电子邮件的应用程序。Undertow是一个用java编写的、灵活的、高性能的Web服务器,提供基于NIO的阻塞和非阻塞API。Undertow的架构是组合式的,可以通过组合各种小型的目的单一的处理程序来构建Web服务器。所以可以很灵活地的选择完整的Java EE servlet 3.1容器或初级非阻塞程序处理。Undertow的设计是可以完全可嵌入的,具有简单易用的编译接口。Undertow的生命周期完全由嵌入的应用程序控制。Undertow是JBoss赞助的一个Web服务器,是Wildfly应用程序服务器中的默认Web服务器。PayPal Adaptive Payments SDK 提供了 Ruby APIs 来创建、处理和管理简单和复杂(parallel and chained)支付方式,并且使用 Adaptive Payments API 实现预批准申请。VelocitySpring MVCBootstrapJqueryPrototypeTinymceGuava是一种基于开源的Java库,Google Guava源于2007年的"Google Collections Library"。这个库是为了方便编码,并减少编码错误。这个库用于提供集合,缓存,支持原语句,并发性,常见注解,字符串处理,I/O和验证的实用方法。

     

     

    最新回复(0)