美国上市公司,专注Java培训21年

Java微框架:不可忽视的新趋势


任何语言都有优缺点。对 Java 而言,它安全、经过严格测试、向后兼容,但却牺牲了部分灵活性和简洁性。于是,有人就尝试寻找方法,以便能规避 Java 的臃肿,同时又利用 JVM 的强大功能。第一波努力围绕轻量级 Java 框架展开,而现在,第二波努力已经出现,即 Java 微框架。

近日,软件分析公司 Takipi 探讨了这一新趋势。

随着语言的成熟,每次发布都会增加一些库。时间一久,对于大部分项目而言,包含在这些库中的许多功能都不是它们真正需要的。微框架就是要解决这个问题,其思想是:创建一个专用而又灵活的解决方案,满足生产过程的基本需求。

Java 微框架是轻量级 Java 框架的延续。它们可能是当今最轻量级的 Java 开发方式。虽然目前应用范围有限,但已经有在生产环境中成功部署的案例。Josh Dreyfuss 来自 Takipi 的产品营销部门, 他介绍了三种当前较为流行的 Java 微框架。

Ninja 是一个用于创建 Web Service 和应用程序的全栈 Java 微框架。它综合 Play 和 Ruby on Rails 的优点,并以纯 Java 格式提供。作为一个综合性软件栈,Ninja 提供了大量开箱即用的功能,如 JSON 解析、HTML 渲染,使得它简单易用。在扩展性方面,Ninja 采用了无状态设计,只需要增加服务器就可以实现横向扩展。不过,内置大量功能和简单易用的代价是,用户选择减少,工具本身占用空间较大。总之,Ninja 重新设计了 Java 框架,提供了简单、可扩展、易于使用的功能。感兴趣的读者可以查看 Ninja 的入门教程。

Spark(注意不要同 Apache Spark 混淆)的设计初衷是,可以简单容易地创建 REST API 或 Web 应用程序。它是一个灵活、简洁的框架,大小只有 1MB。Spark 允许用户自己选择设计应用程序的模板引擎以及选择最适合他们项目的库,比如,HTML 解析功能就有 Freemarker、Mustaches、Velocity、Jade、Handlebars、Pebble 或 Water 等选项可供选择,而且很少需要配置或样板文件。不过,灵活简单的代价是,用户可选的功能减少。总之,Spark 剔除了许多 Java 的臃肿之物,提供了一个最小化的、灵活的 Web 框架。但由于精简程度较高,它缺少了一些功能,不适合用于大型 Web 应用程序的开发。感兴趣的读者可以查看 Spark 的入门教程。

Jodd 是一个 Java 微框架、工具和公用程序的集合。所以,它同上面两个框架可能不具有直接可比性,比如,Spark 可以作为 Jodd 的一个组件。Jodd 的目标是减少许多 Java 工具和框架的空间占用,提高它们的速度,提供一个超级轻量级的框架和工具精选集合。Jodd 中的每个库都是单独提供的,用户可以选择使用。这样一个提供若干功能的框架集合似乎与微框架背道而驰,但实际上,Jodd 大小总共不过 1.5MB。总之,Jodd 是一个框架和工具的集合,用户可以对它们自由组合,形成自己的解决方案。但同时,这种灵活性也增加了使用的复杂度。感兴趣的读者可以查看 Jodd 的入门教程。



【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,如涉及作品内容、版权和其它问题,请在30日内与我们联系,我们会予以重改或删除相关文章,以保证您的权益!

Java开发高端课程免费试学

大咖讲师+项目实战全面提升你的职场竞争力

  • 海量实战教程
  • 1V1答疑解惑
  • 行业动态分析
  • 大神学习路径图

相关推荐

更多
  • Java开发中的 WebSocket是什么?
    Java开发中的 WebSocket是什么?
    Java开发中的 WebSocket是什么?WebSocket允许服务器「主动」给浏览器发消息,如教程演示截图,服务器会主动推送比特币价格给浏览器。 详情>>

    2018-12-06

  • 为什么很少见高薪程序员炫富?
    为什么很少见高薪程序员炫富?
    为什么很少见高薪程序员炫富?大概可能程序员仍然在继续敲代码~加班加班!!虽然程序员的收入相对较高,但是在以上一线城市,面对更高的房价和物价,程序员的工资也要承受不小的压力。 详情>>

    2018-10-15

  • IT技术那么多,为什么要选择学java开发?
  • Java微框架:不可忽视的新趋势
  • Java开班时间

    收起