不使用框架是否可能构建Java Web应用程序?

11

如果不是的话,有哪些适合新手的友好java框架?

我想要构建类似推特(Twitter)的东西。

8个回答

20

只用servlets和JDBC就可以做很多事情。考虑使用JSTL的JSP作为一个额外的好处。

但我敢打赌,如果你的网站超过一页或两页,向浏览器提供数据库内容,你会很快发现为什么有这么多Web框架。硬编码的页面导航、控制逻辑、模糊的层等会导致难以处理难题。

您会发现,对于每个新功能,您都需要大量相似、重复但略有不同的代码。如果您需要维护一个站点并使其正常运行,最终可能会得出结论:有可供捕获的模式。谁知道呢?也许作为您的经验结果,您决定尝试解决Web框架问题。

无论您做什么,我认为拥有不同的层是关键。不要让servlets完成所有工作——它们用于处理HTTP请求。将工作嵌入服务类中,servlets可以简单地调用它们。那样,您就可以重用该逻辑。将持久性代码保留在自己的层中,不要让它泄漏到其他层中。您可以具有可重用组件,这些组件将在您的首次努力中生存。如果您决定切换到Web框架,您只需将这些层插入到位,然后就可以开始了。

我编写了我的第一个重要网站,没有任何框架——只是直接使用servlets、JSP和JDBC。这使我更好地理解了正在发生的事情。我想这有所帮助。


1
我在这里看到了相同的内容:https://www.bayt.com/en/specialties/q/6756/how-can-i-develop-a-java-web-application-without-jsp/。除非你是“taymoor qanadilou”,否则可能是未经归属的盗版。 - T J
1
我不是。显然是抄袭的。这是我九年前写的。 - duffymo
1
你可以只使用servlets和JDBC来完成很多工作。考虑使用JSTL的JSP作为一个不错的补充 - 这就是没有框架的答案。这个答案已经超过十年了。你应该想到更好的方法来提升你的声誉。此外,我并没有引用任何框架。你需要提高阅读理解能力。 - duffymo
1
不要把你的挫败感发泄到我身上。你应该向那些让你做一些不合理的事情的人发泄。请指出我在哪里提到了Spring(提示:没有)。 - duffymo
“这让我更好地理解了正在发生的事情”,这正是我想要构建一个没有任何框架,只有纯Java的简单Web应用程序的原因。 - Arun Gowda

12

查看《Head First Servlets and JSP》,了解构建Java Web应用程序的基础知识,而不需要使用复杂的框架。当使用框架时了解幕后发生的事情是很重要的,而这本书是一个很好的入门介绍。

HFS&JSP
(来源:oreilly.com)


+1建议推荐这个 -- 这可能会在我的下一个项目中挽救我。 :) - Christian Nunciato
@Christian:这确实曾经在一个项目中帮了我一次大忙。当然,那还是在Struts是唯一值得一提的框架的时候。 :) - Bill the Lizard

6
是的,当然可以。Java可能因其各种框架而显得有些繁琐,但您可以通过自己构建基础设施来构建出优秀的Web应用程序。话虽如此,我认为Spring是一个非常好的框架,具有良好的文档和支持。

4

是的,绝对没问题。继续前进,不要让任何人打击你的信心!早些年,一个新的Java程序员写的第一个独立项目可能会是从thehun.com上获取色情内容。我赞扬现在年轻程序员的成熟。


3

是的,这是可能的。但很少有意义,因为您需要自己从头开始实现所有所需的功能。这需要大量时间和精力,并且通常会产生比使用框架得到更糟糕的代码。学习框架也需要一些努力,但是一旦您学会了一个框架,您可以轻松地在下一个项目中使用这些知识。


2
使用常规的jsp,您可以将几个额外的类绑定在一起,构成您的框架,这通常意味着一些类型的servlet过滤器将url映射到一个类。您通常想要这样做的原因是在渲染开始之前运行一些代码(您的控制器/操作)。
这非常简单,与我们正在做的事情并不相距太远。但我们正在使用很多JSTL,它也是一个框架。还有一些Spring,但不需要一个Web框架。

1

始终可以构建应用程序,无论是 Web 应用程序还是其他类型的应用程序,而不使用框架。

框架可以帮助您减少实际编写的代码量。框架可以被认为是任何 Web 应用程序通用的 25% 代码(数据库访问、会话管理、访问控制等),因此如果您要自己编写该代码,那么可以;但是请始终记住,您可以使用任何可用的框架来减少工作量。

框架给您另一个重要优势,它们可以帮助您以标准方式设计应用程序,并且这在代码维护方面非常有帮助。

对于 Java,您可以使用 Struts 或 Spring 框架构建应用程序。

这里是一份很长的 基于 Java 的 Web 应用程序框架清单。


-1
我会选择使用注解的Spring MVC 2.5+。非常简单。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接