从 Java 角度来看最简单的 Web 开发方法?
Posted
技术标签:
【中文标题】从 Java 角度来看最简单的 Web 开发方法?【英文标题】:Easiest web development method from Java perspective? 【发布时间】:2016-05-10 03:50:35 【问题描述】:我一直是前端 Java 程序员,有时不得不在 .NET 上编写 C#,但在大多数情况下,我可能只知道 Java。
只是目前我要做一个小型网站,做一个非常简单的事情,我真的不知道从哪里开始。我的 html 技能可能和我在 android 上的 XML 一样好,可以说远没有现代网站的 HTML 源代码复杂。我也几乎没有 php 经验,也没有构建或管理数据库的强大背景。
是否有某种技术可以主要使用 Java 构建完全正常工作的网站?它可能有我必须熟悉的其他语言,但在大多数情况下,我希望学习曲线很少。对于后端,我非常确定我将使用 Azure 或 Parse 等云服务器服务。
这是我的一个非常特殊的项目,所以我不能让任何人编码它,而只有我和我自己。谢谢你,祝你有美好的一天。
【问题讨论】:
【参考方案1】:使用 Servlet 和 JSP 进行 Web 开发,这是一个起点,然后是 Java Web 服务,因为您已经知道 XML。
【讨论】:
【参考方案2】:我建议您使用以下一组技术构建所有前端:HTML5、AngularJS、JQuery、javascript、引导程序。您的后端可以与前端交换 json。 Bootstrap 是您所有网站的基础,您可以从网络本身获得免费模板,这将大大减少您在网页设计方面的辛勤工作。您只需要调整链接和调用,AngularJS 将处理控制器和其他东西(有机会了解)。一些 JQuery 组件,甚至 AngularJS 组件会增强你的系统可用性,结合 javascript 会为前端带来大部分艰苦的工作。我有机会从零开始一个系统,这就是我所做的,现在我有一个AngularJS应用程序与java一起工作,通过在后端(spring,hibernate等)接收和提供json数据。在 github,您可以找到一些可以在您的应用程序中使用的 angularjs 种子示例,并且再次节省时间和精力。
【讨论】:
鉴于我肯定会使用 Azure 等后端服务,我可以取消您提到的一些技术吗?我认为这意味着 Spring 和 Hibernate,我不知道其他的。 是的。如果你的后端已经设置好了,那么你只需要构建你的前端。一个好的趋势是带有 angularjs 和/或 jquery 的 HTML5。这完全独立于您的后端,并且可以在没有设置后端的情况下仅通过使用模拟数据来构建。【参考方案3】:提前致歉,我的回答范围有点广,
无论您在 Azure 应用服务中选择何种语言,开发任何网站的最佳开发模型是利用 Azure 应用服务提供的两个强大功能,持续部署功能和部署槽。
在 git 存储库上启动您的网站,您可能有节点模块或 bower 包,但在构建时,您的 git 会将其压缩到具有适当 gulp 文件的工作网站。 Check out this blog to understand the process。
一旦你的 git repo 为一个简单的网站工作,你的开发过程就会变得更加顺畅。 您可以提交更改,Continuous Deployment 将自动启动部署,以便您将最新的内容放入您的网络应用程序。。 Check this blog for more details on Continuous Deployment.
您可以使用部署槽来暂存更改和交换以在云上维护 Web 应用程序的多个版本,从而轻松构建具有最后已知良好状态的生产级应用程序。 Check this blog for more details on Deployment slots.
这两个功能是我在开发、部署和维护我工作的任何项目时最常用的功能,我发现它们对于理解它们并充分利用它们非常有用。
我不是 Java 开发人员,但从您的问题中我可以看出您正在寻求开始 Web 开发,快速而强大的方法(这里纯粹是主观的:D)是使用 Asp.Net 5 和 Angular 2 Beta . Here is an end to end tutorial on how to setup a development environment。 Asp.Net 5 应该对 Java 开发人员友好,因为它非常轻量级且易于使用,并且与 vscode 和 Visual Studio 社区版配合得很好。
如果您需要一个纯 Java 环境也应该可以,请告诉我长答案是否有帮助:)。
【讨论】:
以上是关于从 Java 角度来看最简单的 Web 开发方法?的主要内容,如果未能解决你的问题,请参考以下文章