在Java中启动Web编程的最佳实践是什么?

时间:2010-08-06 09:37:11

标签: java

Jsp struts

事实上我甚至不太清楚这两个框架的区别,还是 Jsp 一个框架呢?

7 个答案:

答案 0 :(得分:1)

还有Spring MVC

答案 1 :(得分:1)

Struts,Spring,Tapestry等是MVC (Model-View-Controller)框架。 JSP只是一个表示层,它转换为HTML标签以显示给浏览器。

Struts是MVC框架的“祖父”,拥有巨大的追随者。 Struts2是另一个。 Spring是现在一代的框架,包括用于MVC的Spring MVC以及其他好东西。

所有这些MVC都允许您连接到表示层,如JSP,HTML,FreeMarker等。

希望这有帮助。

答案 2 :(得分:1)

Struts是一个 dead 复古框架。你不是指Struts 2吗?无论如何,没有“最佳实践”。只需选择适合您需求的框架即可。 JSP不是框架,它是一种视图技术。几乎所有框架都构建在JSP / Servlet之上。默认情况下,只有JSF 2.0不使用JSP,而是使用它的后继Facelets。

相关问题

答案 3 :(得分:1)

如果你刚刚开始,我建议避免框架的复杂性。

我从Martin Fowler的“企业应用程序架构模式”一书中学习了Web架构。我推荐的不止是什么;它会改变你的思维方式,让你理解为什么某些框架就像它们一样。

使用这些模式进行手动编码的最佳部分是,我从来没有打过框架API的奇怪角落,而且我确切地知道我的整个代码库正在做什么。

最糟糕的是,您必须手动编写大量CRUD数据访问代码,但这种做法将使Hibernate MUCH等持久性框架更易于理解。

所有图案的描述都可以在线免费获得,以及一些优秀的论文:

http://martinfowler.com/eaaCatalog/

问题是,如果您购买这本书,您将获得完整的图片。您可以在这里以30美元的价格购买它:

http://www.abebooks.com/servlet/SearchResults?sts=t&tn=patterns+of+enterprise+application+architecture&x=0&y=0

我不记得是否有一件事是连接池/管理或JDBC的细节。请记住:ThreadLocal是你的朋友。这是在请求的生命周期中使用JDBC连接(以及任何其他请求范围的变量)的好方法,而不必一直传递Connections。您可以稍后添加池。

另外一件事:JUnit + Apache HTTP Commons + XMLUnit对于测试是不可靠的。确保您运行系统测试!它们将改变您编码的方式(为了更好)。您可以断言HTTP请求及其响应的输入/输出。有时它高级,但您将学习何时以更精细的粒度进行测试。

答案 4 :(得分:0)

他们一起工作。但我建议先学习JSP。

但是,您也可以查看this Struts概述。它应该给你全局了。

答案 5 :(得分:0)

您考虑过Google Web Toolkit吗?

答案 6 :(得分:0)

我建议您尝试Apache Tapestry

很容易上手(阅读:缺少大量的XML配置),由于模板与POJO紧密相关而易于重构,而事实是基于合理的约定但允许您更改这些是明确的加。

我遇到的两个最大的争吵是它有字符串式@Validate注释,搜索“挂毯”有时会带来很多关于挂毯的信息。

http://tapestry.apache.org/tapestry5/tutorial1/index.html有一个很好的教程。