我正在创建一种Web服务器,允许用户提供.jow文件,然后当Web浏览器请求该文件时,将生成并显示视图。
现在我的问题是:
我需要什么来生成视图?
我需要使用html,css还是javascript?
我是否需要编写特殊小程序的一部分?
提前致谢!
答案 0 :(得分:1)
无论你做什么,“视图”最终都必须输出HTML。简而言之,网页是HTML文档,也就是Web浏览器所理解的语言。
HTML指示您将在页面上看到的内容以及各种页面元素之间的相互关系。正如Scott Hanselman fond of saying所说,你正在创建一个角括号生成器。 HTML,如XML和SGML,使用了很多尖括号。
CSS和JavaScript是“可选”技术,您可以在HTML之上进行分层。如果我的解释太明显,我道歉。你的问题很广泛。
CSS是一种语言(但不是真正的编程语言),它指示浏览器如何“呈现”HTML。 CSS控制HTML的颜色,大小,位置等。 CSS允许您的HTML适应不同的设备,屏幕大小甚至不同的媒体(如屏幕与打印)。 CSS还控制一些简单的“行为”,例如当你将鼠标悬停在它们之上时,HTML元素应该如何反应。目前,CSS甚至可以用于创建动画。
JavaScript是一种编程语言,允许您操作HTML以创建超出HTML和CSS功能的复杂行为。通常,JavaScript用于实现更多动态或交互功能。特别是,AJAX是一种技术,它使某些人称之为Web 2.0应用程序。现在,现代JavaScript,AJAX,CSS和HTML的组合通常简称为HTML5。
我见过的大多数Web应用程序框架主要生成HTML,但更高级的应用程序框架也会为您生成JavaScript。例如,常见的“增强”是允许创建像按钮一样的HTML链接(锚点)。通常,有一些锅炉板CSS只是为了使默认输出更漂亮,但大部分CSS都留给最终用户来制作。
因此,您的视图只是输出HTML。如果你想要符合流行词,请说它会生成HTML5!
现在,我所做的只是告诉你要生成什么。您的实际问题是您需要生成它。好吧,这听起来像是在编写Java框架。那么答案是你将使用Java来生成视图。那么,你用Java写什么?
嗯,您需要某种模板引擎,可以从用户编写的模板中生成HTML(或HTML5)。您需要一个位于“视图”下的框架。我假设您将创建一个MVC framework,所以您需要提供的另一件事是支持轻松创建“控制器”的代码和约定。您还需要将框架集成到Web服务器中(或者按照标题建议自己编写Web服务器),以便在有人请求“.jow”文件时调用框架。如果你正在做MVC,一般的最佳做法是首先调用控制器,然后决定返回哪个视图。
有关如何在java中创建Web服务器的基本说明可以在here(以及许多其他地方)找到。
或者......你可以使用已经存在的许多Java web frameworks中的一个。