首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >要用Java构建一个web应用程序,我需要学习什么?

要用Java构建一个web应用程序,我需要学习什么?
EN

Stack Overflow用户
提问于 2009-04-06 17:39:34
回答 11查看 3.3K关注 0票数 3

我已经做了一段时间的PHP/MySQL web开发,我在这方面相当胜任。然而,最近我已经学会了Java并爱上了它,我现在真的很想做更多的Java工作。

我第一次得到了一个客户端的机会,他需要一个Web2.0ish的web应用程序,他同意让我使用我想使用的任何东西,包括Java。然而,我没有做任何网页开发。在Java中,我只看过官方Java教程,了解了一些小程序,构建了一个2D pacman游戏,并在Google Web Toolkit中做了一些简单的工作。

我需要在接下来的2-3天内开始这个项目,这样我就没有太多的时间去阅读关于这个主题的长书了。这就是我到目前为止学到的:

  • 在我的dev机器上设置一个Tomcat来使用Eclipse
  • 学习servlet、doPost()doGet()init()方法等基础知识
  • 构建了一个迷你MVC应用程序,它显示一个HTML页面,允许您从下拉列表中选择某项内容,当您单击submit时,它将通过request.getParameter()doPost()函数中检索您提交的值,然后转发到一个JSP页面,该页面显示您所选择的值。

我认为接下来的几件事我需要学习:

  • 如何访问/使用数据库
  • 会议和烹饪
  • 可能会更多地介绍JSP页面的语法。

关于Java,似乎有数以百计的主题,我对它们一无所知,但是我没有时间学习所有的东西。为了使用Java和构建这个web应用程序(可能有20个屏幕),我需要有人指出我需要学习的任何其他重要的东西。

另外,我来自一个CodeIgniter背景,它是PHP框架,它使表单验证、会话管理(它使用数据库会话)、分页和类似这些常见任务变得非常容易。如果Java中有一个类似的轻量级框架可以处理这样的事情,那么也请提到它。

谢谢。

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2009-04-06 20:47:22

有这么多不同的Java企业技术,很难知道从哪里开始。如前所述,head first JSP & Servlets书籍非常优秀。我目前正在开发一个企业级应用程序,这个应用程序是几年前用Servlet开发的。随着时间的推移,我们已经迁移到JSP了,但是我们没有使用任何新的框架。因此,这无疑是一种有效的方法,尽管已经过时了。

java的特点是,大多数企业开发都是一系列不同技术的结合。例如,您可以使用JSP为视图创建一个带有Servlet后端的应用程序,为您的DB连接使用Hibernate、为您的XML使用JDOM、为您的日志框架使用JUnit或AspectJ、用于搜索的Lucene、用于部署的JBoss (以及部署可能非常重要)等等。

我的建议是(如前所述)选择一个框架,有很多可供选择,例如Tapestry、JSF、Wicket、Struts等,它们将抽离许多底层技术。您选择的任何java技术都会有一个愿意帮助的良好社区。

另一件需要考虑的事情,因为您似乎急于使事情工作,是(至少在我看来) Java不是一种快速的语言来构建东西。它非常冗长,除非您掌握好的Java web设计的细微之处,否则很容易对自己开枪。也许您应该看看JVM上可用的其他一些技术(这样您就有了所有可用的Java库),比如Groovy。

Groovy允许您使用Java语法(如果您选择)或动态Ruby类语法进行编程。另外,Grails在很大程度上是Groovy的Rails克隆,它将允许您在任何时候编写web应用程序。

无论你选择做什么,祝你好运,欢迎来到Java的精彩世界。

票数 3
EN

Stack Overflow用户

发布于 2009-04-06 17:44:17

您应该跳过基本的servlet,使用web框架,从Struts + Tiles (简单易懂,最多几个小时)到Spring等等。在您的例子中,我还会使用Hibernate来进行数据库抽象--您不会在这么短的时间内赶上JDBC。

票数 4
EN

Stack Overflow用户

发布于 2009-04-06 17:47:49

首先,我建议您选择Head First Servlet& JSP。它将为您提供Java开发的一个很好的概述。从他们那里,你会更好地选择一个web框架来使用。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/722452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档