哪些Web编程语言能够制作这个Web应用程序?

时间:2011-01-02 06:22:51

标签: python web-applications jsf jsf-2 primefaces

我正在探索许多技术,但我希望您对哪个Web框架最简单/最可能的输入。我目前正在寻找JSP / JSF / Primefaces,但我不确定这是否适合这个应用程序。

以下是该应用的基本描述:

  1. 用户使用他们的用户名和密码登录(也许我可以以某种方式合并OPENID)?

  2. 通过非常好的用户界面,他们将会看到特定于某个类别的大量问题列表,例如“烹饪”。 (我将手动编译此列表并使其可用。)

  3. 当他们点击其中任何一个问题时,会在其下方打开一个小输入框,以允许用户输入链接/网址。
  4. 如果他们输入的链接在网址指向的网页上有相同的问题,则会获得一分。然后,这个问题就会消失,并被添加到另一个页面中,该页面包含所有正确链接的问题列表。
  5. 在屏幕的右侧,将有一个排行榜,其中包含前十名的人的用户名。
  6. 这个想法相对简单 - 能够通过允许许多人做出贡献来编译指向外部网站的链接以获取特定问题。

    我知道我可以使用Primefaces轻松构建UI。 [B]我不确定JSP / JSF是否能够在某个URL上解析HTML以查看它是否包含单词。[/ B]我可以通过使用urllib轻松地使用python执行此操作,但我可以'使用python进行Web GUI构建(这非常困难)。什么是最好的方法?

    任何帮助将不胜感激!谢谢!

3 个答案:

答案 0 :(得分:4)

最好的方法是最适合你的方法。如果Python不是你的优势而是Java,那么使用Java。如果您是Python专家并且对Java知之甚少,请使用Python。

互联网上有这么多资源支持这么多平台,所以决定的确归结为最适合你的。

答案 1 :(得分:2)

对于初学者,忘记JSP / JSF。这是一个有很多问题的旧组合。请考虑Facelets / JSF。 Facelets是当前版本的JSF中的默认模板语言,而JSP仅用于向后兼容。

  

我不确定JSP / JSF是否能够在某个URL上解析HTML以查看它是否包含单词。

是的,虽然实际获取数据和解析其内容将由普通的Java代码完成。这本身与JSF API无关。

使用JSF,您可以创建包含UI(输入字段,按钮等)的Facelet。然后仍然使用JSF将它绑定到一个所谓的支持bean,它主要是一个普通的Java类,只有一个或两个JSF特定的注释应用于它(例如@ManagedBean)。

当用户输入URL并按下某个按钮时,JSF负责在Java类(支持bean)中调用一些操作方法。在此操作方法中,您现在可以访问用户输入的URL,并从此处开始,简单的Java编码开始和JSF细节结束。您可以将获取URL的代码放在单独的帮助程序类中进行解析(分离关注点),或者直接在支持bean中自行决定。选择是你的。

顺便说一下,我们办公室里有一个非常初级的程序员使用JSF,这与你在这里请求的东西不同,他在短时间内成功完成了这项工作。因此,真的不是那么难;)

答案 2 :(得分:1)

没有任何网络技术可以满足您的需求。解析在某些URL上找到的文档超出了构建Web界面的范围。

但是,每个Java的Web技术都可以无限制地访问JVM上运行的丰富多样的(如果不是太丰富和太多变化的)库和框架集。你可以肯定地说,如果有一个库可以做某事,那么将有一个Java版本可用。下载和解析文档所需的内容不会超过标准库中可用的内容(除非您坚持注入依赖项或横切您的注意事项),因此使用JSP,JSF / Primefaces或其他任何项目执行项目时都没有问题。 / p>

由于您声称已经了解Python,并且因为您无论如何都必须添加一些HTML / CSS,我建议您尝试使用Django。这很简单,有一套可供选择的OpenID插件,可以免费为您提供管理界面(因此您可以使用第一组链接填充泵)。