广告行业包括网站建设吗,注册网站不用手机短信验证的,网站建设作业多少钱,注册网站什么要求什么是Java微框架#xff0c;为什么要使用它们#xff1f;  每种语言都有权衡。 对于Java#xff0c;要成为一种安全#xff0c;经过严格测试#xff0c;向后兼容的语言#xff0c;就要在敏捷性和精简性方面做出一些牺牲。 毫无疑问#xff0c;它有一些冗长和冗长的内容…   什么是Java微框架为什么要使用它们    每种语言都有权衡。 对于Java要成为一种安全经过严格测试向后兼容的语言就要在敏捷性和精简性方面做出一些牺牲。 毫无疑问它有一些冗长和冗长的内容但是如果您真的想深入研究或大规模推广JVM作为后端非常有吸引力。 它功能强大并已在最恶劣的环境中经过测试。 毕竟由于某种原因Java被广泛使用并且可以强力部署。   然而并不是每个人都接受事物的状态。 有好几个人试图找到解决Java膨胀的方法并且仍然保持JVM的功能。 第一个浪潮是围绕轻量级Java框架我们写过其中的一些框架 Dropwizard与Springboot 。 这些为Java提供了轻量级的现代框架并帮助缩短了开发时间。 现在最近又出现了第二波浪潮。 那个浪潮是Java微型框架。    新帖Java Micro Framework您无法忽略的新趋势http://t.co/l51yQNrzWd pic.twitter.com/v0JAPXfz6Q   — Takipitakipid 2015年6月10日   什么是Java微框架  随着语言的成熟每个版本的不可避免的影响是完善的库会不断增长和膨胀。 一点之后大多数项目实际上不再需要这些库中包含的许多功能。 微型框架正在尝试解决这个问题。 这个想法是创建一个集中的敏捷的解决方案使生产过程降至最基本。   微型Java框架本质上是轻量级Java框架之旅的延续。 它们是当今使用Java的最简便的方法。 作为新手尚未在所有类型的生产环境中部署它们但是早期的生产部署已显示出巨大的成功。 他们的吸引力很明显并且这个领域现在充满了兴奋和积极发展。   今天我将介绍三个可用的更流行的Java微框架Ninja FrameworkSpark和Jodd。     Java微型框架– Github统计信息   忍者框架    Ninja是用于创建Web服务和应用程序的全栈Micro Java框架。 它旨在利用Play和Ruby on Rails的积极方面并通过纯Java格式交付它们。 它使用MVC概念以简化操作并具有以一致的方式编写任何大小的应用程序的能力。   作为一个集成的软件堆栈Ninja附带了许多现成的功能例如JSON解析指标支持HTML渲染这需要为控制器添加一些注释和定义。 其中许多功能都是基于使Ninja成为对DevOps友好的工具。 这些库的包含使Ninja易于使用。 在可伸缩性方面Ninja是无状态设计这使得水平扩展仅需添加服务器即可。   在此功能和易用性之间的权衡是与该领域的其他一些工具相比用户选择更少占用空间更大。 为您选择了开发结构并自动创建了一组源文件夹和文件。   人气和图书馆在Github上 Ninja撰写本文时拥有809颗星星和288个叉子与Jodd相当但在人气上远远落后于Spark。 如果您想贡献请查看Github页面。 对于HTML渲染Ninja使用Freemarker。 为了处理JSON和XML使用了Jackson。 许多核心库由Ninja编写。   入门 Ninja入门非常简单。 它基于Maven需要Java和Maven才能运行。 Ninja项目通过Maven原型工作一旦创建用户就可以使用单个命令来构建新项目。 要启动第一个项目命令是  mvn archetype:generate -DarchetypeGroupIdorg.ninjaframework -DarchetypeArtifactIdninja-servlet-archetype-simple 输入一些值并移至项目目录后执行以下操作将在其“ SuperDevMode”中启动Ninja它将拾取您自动进行的更改  cd MY_INSTALLED_PROJECT
mvn clean install // to generate the compiled classes the first time
mvn ninja:run // to start Ninjas SuperDevMode 从那里您可以将项目导入所选的IDE中并开始编码。 有关更多详细信息请查阅文档 。   要点 Ninja Framework重新设计了Java框架以提供简单可伸缩且易于使用的功能。 它提供了许多功能使用户可以轻松地快速启动和运行。 作为一个完整的堆栈框架与其他某些选项相比您确实获得了更大的占用空间和更少的可定制性。  火花    请勿与Apache Spark混淆此Spark的目的是设计一个纯Java框架该框架可用于轻松简单地创建REST API和/或Web应用程序。 Spark是一种敏捷且精简的框架大小不到1 MB可用于快速轻松地开发应用程序。 最初受到Sinatra的启发Spark已发展成为一个完全实现的Web框架拥有一个敬业的开发人员社区该社区继续保持活跃的发布周期。   作为一个微框架Spark决定让用户选择模板引擎来设计其应用程序。 他们提供的灵活选择库使用户可以为他们的项目选择最佳选项而不会因生态系统细节而陷入困境或学习困难。 并且由于他们专注于提供小尺寸解决方案因此几乎不需要任何配置或样板。   与其他选项相比Spark的灵活性和简单性的折衷是其功能较少。 Spark的目标是尽可能地简化和直接从而省去了许多额外的工作例如过多的注释和XML配置。 为了超轻量级它牺牲了一些潜在有用的功能。   入门 Spark入门非常简单。 它需要Java和Maven才能运行。 第一步是添加一个Maven依赖项  dependencygroupIdcom.sparkjava/groupIdartifactIdspark-core/artifactIdversion2.2/version
/dependency 第二步是导入Spark并开始编码  import static spark.Spark.*;
public class HelloWorld {public static void main(String[] args) {get(/hello, (request, response) - Hello World!);}
} 有关更多详细信息请查阅文档 。   人气和图书馆在Github上截至撰写本文时Spark拥有2398个星星和542个分支使其轻松成为我今天在这里重点介绍的三个框架中最受欢迎的框架。 如果您想贡献请查看Github页面。 Spark提供的灵活性的一部分不是将用户锁定在特定的库中。 例如对于HTML渲染可以使用FreemarkerMustachesVelocityJadeHandlebarsPebble或Water。 对于您要使用的任何对象都添加一个Maven依赖项进行设置。   总结 Spark消除了许多Java膨胀并提供了一个简单而灵活的Web框架该框架易于设置可用于创建各种Java项目。 但是通过细化您确实会失去一些功能因此Spark对于大型Web应用程序不是理想的选择。  乔德     Jodd是Java的微型框架工具和实用程序的集合因此它可能无法直接与此处的其他同类工具进行比较。 实际上例如Spark可能会作为Jodd的一部分包含在内。 但是Jodd的驱动力是减少许多Java工具和框架的占用空间并降低其运行速度并提供多种超轻量级框架和工具。 Jodd不会将它们全部组合在一个单独的应用程序中而是将每个库分解成自己的独立块从而允许用户选择并选择他们所使用的库。   乔德Jodd已经存在了一段时间在那段时间里他们只要发现需要就构建了轻量级的工具和实用程序。 通过使工具和框架保持分离并以松散的形式提供它们Jodd可以为每个单独的零件保留极为集中的范围。 它们具有用于处理请求用于DI容器用于解析HTML5等的框架。 像这样的集合似乎违反了简化的微框架的想法但是整个捆绑包的容量不到1.5 MB因此占用空间很小。   与乔德Jodd的权衡是它还没有为您完成。 库集合中提供了大多数功能但是您必须动手并自行设置。 可定制性为用户提供了很多控制和灵活性但是使用起来却不那么容易。 幸运的是每个单独的工具既简单又小巧因此深入研究代码不需要费力地摸索。 Jodd站点上的文档还提供了一些指导和最佳实践。   入门 Jodd是使用Gradle构建的并且针对Java 1.5及更高版本。 由于Jodd是工具的集合因此入门并不像其他工具那么简单。 一种选择是下载Jodd软件包以获取所有模块。 另一种选择是通过Git从源代码构建Jodd。 为此  克隆Jodd Git存储库  git clone https://github.com/oblac/jodd.git jodd 然后使用以下命令构建项目  gradlew build 您也可以在Maven中安装Jodd。 为此请使用以下命令  gradlew install 有关不同模块的更多详细信息以及如何使用它们的一些示例请查阅Jodd的文档 。   知名度和图书馆在Github上 Jodd撰写时拥有837颗星星和243个分支使其与Ninja相当但远远落后于Spark。 如果您想贡献请查看Github页面。 Jodd是实用程序框架和工具的集合因此它使用的库是自己的。   总结 Jodd是非常专注且轻量级的框架和工具的集合。 用户可以通过多种方式组合这些库以获取仍可提供许多功能的定制解决方案。 但是通过将每个元素分解为不同的部分用户有责任潜入并按照自己的需要进行一切设置。  结论  Java微型框架是尝试在保持Java优势的同时解决其弱点的尝试。 他们专注的裸露方法允许非常轻便的应用程序部署从而帮助开发人员将JVM的功能与更新更快的语言的敏捷性相结合。   作为较新的开发定义什么才是Java微型框架可能是一个意见问题。 根据你想如何定义来看有几个人可以包括和探索如JHipster  Javalite  Ratpack和Vert.x 。 如果您过去使用过微框架请在下面的评论部分中告诉我们您对微框架的看法。  翻译自: https://www.javacodegeeks.com/2015/06/java-micro-frameworks-the-new-trend-you-cant-ignore.html