繁体   English   中英

基于云的应用程序作为Restful Services,具有Java后端和Android前端

[英]cloud based App as Restful Services with backend in Java and frontend in Android

我们的目标是使用REST API和强大的后端(以Java为基础)在云端(amazon)中建立完整的行动应用程式。我知道jEE,Gradle,Android,Amazon,Sprint MVC和雄猫 我已经分别学习了所有这些技术。我不知道,所有这些技术如何协同工作? 我发展的第一步应该是什么?

因此,您想开发一个由restrest api支持的应用程序。 尽管可以根据自己的观点以不同的顺序进行操作。 但我建议遵循以下步骤:

  1. 从编写Restfull api开始。 要编写restfull api,您必须了解Jax-rs以及(Jersey或RESTEasy)和JPA(以防需要数据持久性)。

  2. 正如您在问题中所说的那样,您想使用AWS,因此在AWS上获得一个帐户并将api部署在服务器上。

  3. 如果您需要其他一些服务器端功能,则可以使用servlet来实现。 如果要使用servlet,则必须将tomcat用作容器,也可以使用其他任何选择。

  4. 走了这么远之后,现在您只需要开发您的android应用即可。 调用您从android应用程序编写的api,以在服务器和android应用程序之间传递数据。

要开发由REST api备份的android应用程序,不需要您提到的所有组件。 支持JEE的服务器,编写REST api和android开发所需的工具足以提供所需的基本功能。

(免责声明:基于我的经验而论)从选择一种有效的架构模式开始,从长远来看,域驱动设计将在维护过程中表现出色。 在设计上做很多基础工作。

接下来是开发框架和其他相关工具的选择,从您先前的评论看,您似乎在使用gradle,在这方面对我来说没有太多保留,并且似乎是不错的选择。

  1. 基础开发框架:当然是Spring Boot,您可能不会后悔。
  2. Web框架:Spring MVC在几乎所有情况下都足够好,并且,如果您看不到它支持任何需求,它会为您提供自定义扩展点(不过,您可能会错过开箱即用的JAXRS标准注释)
  3. 您最终选择的任何架构模式中,所有您作为POJO域逻辑。
  4. 持久性:如果您是新手,请从RDBMS开始,因为其他所有问题都倾向于解决它的漏洞。 如果您正在寻找符合ANSI SQL要求的postgres,那么其他免费且开源的软件与具有某些出色功能的其他软件一样好。 对于ORM,带有QueryDSL的Spring Data JPA将使您构建一些易于维护的持久层。
  5. 单元测试:Junit4应该足够好,并且与Spring集成将是基于Spring的应用程序的最佳选择。
  6. 如果最终以某种方式使用了消息传递,请使用Rabbit或Active MQ进行AMQP
  7. Spring Boot带有嵌入式容器,因此您可以选择tomcat或jetty口味,而省去了很多麻烦
  8. 使用Spring集成或Apache骆驼满足您的集成需求。
  9. 既然您提到了云,请遵循12要素应用推荐,尝试使用Spring Cloud并尝试实现为本地云。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM