你如何用Java制作网站?

时间:2009-03-07 03:10:25

标签: java php mysql

这可能是一个非常微不足道的问题,但我一直在我的学校编写Java程序,我发现我也可以用Java创建网站。

  • 我该怎么做?有什么好书/教程吗?
  • 哪个更适合Web开发,Java或PHP?
  • 此外,当使用PHP时,MySQL开始出现并在为桌面编写Java程序时,我们只使用文件I / O,那么对于Web开发,文件I / O或MySQL有什么好处呢?

7 个答案:

答案 0 :(得分:68)

你问的是几个不同的问题......

  • 如何使用Java创建网站?

使用Java开始制作网站的最简单方法是使用JSP。 JSP代表Java Server Pages,它允许您将HTML嵌入Java代码文件中以创建动态页面。为了编译和提供JSP,您需要一个Servlet容器,它基本上是一个运行Java类的Web服务器。最流行的基本Servlet容器称为Tomcat,由Apache Software Foundation免费提供。按照cletus提供的here教程。

一旦启动并运行Tomcat,并对如何部署JSP有基本的了解,您可能希望开始创建自己的JSP。我总是喜欢IBM developerWorks教程。他们有一个JSP教程here看起来不错(虽然有点过时了)。

您会发现Java Web开发比JSP更多,但这些教程将帮助您朝着正确的方向前进。

  • PHP与Java

这是一个非常主观的问题。 PHP和Java只是工具,在糟糕的程序员手中,任何工具都是无用的。 PHP和Java都有自己的优点和缺点,对它们的讨论可能超出了本文的范围。我会说,如果你已经了解Java,那就坚持使用Java。

  • 文件I / O与MySQL

MySQL更适合Web应用程序,因为它旨在处理许多并发用户。你应该知道,Java可以像PHP一样轻松地使用MySQL,通过JDBC,Java的数据库连接框架。

答案 1 :(得分:42)

阅读tutorial on Java Web applications

基本上,Web应用程序是Java EE标准的一部分。很多人只使用Web(servlets)部分和其他框架,特别是Spring,还有Struts,Seam和其他框架。

你需要的只是一个像IntelliJ,Eclipse或Netbeans的IDE,JDK,Java EE下载和像Tomcat这样的servlet容器(或像Glassfish或JBoss这样的成熟应用服务器)。

这是Tomcat tutorial

答案 2 :(得分:8)

我会跟着臭名昭着的“你真的想那样做”的答案。

看起来你的重点是玩Java并看看它能做些什么。但是,如果您想要实际开发Web应用程序,您应该知道,虽然Java用于Web应用程序(以及严重的应用程序),但还有其他技术选项可能更适合。

就个人而言,我喜欢(并使用)Java在服务器上提供强大的可移植后端服务。我从来没有尝试用它来构建网站,因为它似乎永远不会是最明显的事情。在厌倦了PHP(我已经使用多年)之后,我最近爱上了Django,一个基于Python的Web框架。

Ruby on Rails的人们有很多非常有趣的videos on youtube将不同的网络技术与RoR进行比较。当然,这些显然是夸大其词,可能略有偏见,但我会说每一个都有不止一个真理。关于Java的是here。 ; - )

答案 3 :(得分:6)

虽然应该提到很多其他人,但应该首选Apache Wicket

Wicket不仅减少了许多样板代码,它实际上完全删除了它,您可以将业务代码和标记完美分离,而无需将两者和您可以从网站上阅读的各种其他内容混合在一起。

答案 4 :(得分:5)

另外请注意,尽管Java通常非常适合初学者,但是进入JavaEE,Servlets,Facelets,Eclipse集成,JSP以及在Tomcat中启动和运行所有内容都不是。当然,这不是构建网站的最简单方法,并且可能对大多数事情来说都是过度杀伤。

最重要的是,您可能需要自己托管您的网站,因为大多数网站空间提供商都不提供Servlet容器。如果你只是想看看它的乐趣,我会尝试使用Ruby或Python,这是更酷的东西。但无论如何,要提供至少与问题相关的东西,这是一个很好的Servlet教程:link

答案 5 :(得分:1)

如果您想使用Java创建网站,请查看创建Applet。除非你想要更专业的东西,否则你很可能不需要使用普通的Java。

答案 6 :(得分:0)

我建议OOWeb充当HTTP服务器和Velocity之类的模板引擎来生成HTML。我也提出了Esko对Wicket的建议。这两种解决方案都比平均设置简单得多。