Java EE Spring框架相关问题

时间:2014-04-27 12:46:06

标签: spring frameworks

好的,这很长,有许多愚蠢的问题,因为我是一个愚蠢的初学者。

我是一个开发项目的开发人员(Java Web App),我对Java相对较新。我甚至比Spring框架更新。我设法编写了一个小项目,它使用一个servlet和一些jsp来根据数据库对用户进行身份验证,并根据登录凭据将它们路由到欢迎页面或错误页面。我已经达到了这一点,但它只是这个应用程序将要做的事情的开始。最重要的是,我没有使用任何Spring。

我理解,如果我要设计Java EE企业应用程序,那么学习spring框架符合我的利益,因为它使许多事情变得更容易。所以,在那个任务中,我前往本网站的教程:

http://spring.io/guides/gs/serving-web-content/

为了做一些学习。我很快地重申了他们的所有示例包括依赖项和构建的Maven或Gradle脚本。所以,我想哦,如果我需要使用Spring框架,我现在必须学习其中一个构建工具吗?所以,凭借我有限的知识和阅读,当我开始理解它是Ant-> Maven-> Gradle系列中的最新一代构建工具时,我选择了Gradle。所以,我认为Gradle是我应该投入的时间。

无论如何,当我开始处理上面的Spring教程时,我很快意识到他们是在命令行而不是在IDE上执行此操作。这使我更加困惑,因为我想为什么有人会在今天充满功能的IDE中使用命令行。我已经安装了Eclipse(普通的vanilla + Spring Tool Suite),所以我想我会在Eclipse上做这个。这就是我的困惑飙升的地方。

对于初学者来说,我无法弄清楚要开始的项目模板类型。它应该是一个动态网络项目吗?"不等它必须是某种Spring模板吗?否则,为什么我会遇到添加Spring Tool Suite并获取所有这些新模板的麻烦?好的,所以我选择了一个Spring模板。我很快意识到我也可以选择将我正在做的Spring MVC教程导入Eclipse。所以,我做到了。更加困惑,现在我意识到如果我右键单击导入的示例项目,就不再有"在服务器上运行" "运行为"中的选项菜单。我想为什么会消失?我一定是选错了项目模板。但是等等,我无法选择错误的模板,因为我从Spring网站导入了整个项目。哦,我的头疼。经过一番思考后,我记得.....哦,是的,他们谈到了Gradle,我已经下载了它,并为它设置了Path环境变量,所以我将使用Gradle来构建和运行这个项目。好的,现在如何在Elipse中调用Gradle?更多阅读告诉我,我必须有Eclipse Gradle Integration。所以我把这个插件下载到了eclipse中。现在,在我的右键菜单中,我有一个" Gradle"和#34; Gradle ......"选项但仍然没有"在服务器上运行"。男人,为什么这么复杂我是一个初学者,只是试图运行一个教程Spring MVC项目。无论如何,我选择了#34; Gradle"来自"运行为"选项,我看到Gradle在Eclipse控制台中打印出一堆东西,就像它启动嵌入式servlet容器和其他好东西一样。但我发现没有其他事情发生。我希望Eclipse嵌入式Web浏览器能够向我展示" Hello world"。但是等待这个不是web项目,因为它的层次结构中没有Web-Inf文件夹,所以为什么我会看到一个浏览器...好吧但我也没有看到"你好世界&#34 ;在控制台?项目在哪里运行? Ahaha ..最后我推出了自己的Chrome浏览器并将其指向localhost URL和荣耀,我看到了#34; hello world"。

我花了两天半的时间来解决这一问题。正如你所看到的,我对这些事情的理解还处于起步阶段,我需要回答一些问题。如果我想构建一个Java Web应用程序,我是唯一的开发人员:

  1. 我需要构建工具吗?我认为这是为了团队。
  2. 如果是这样,Gradle好吗?
  3. 以哪个Eclipse模板开头?
  4. 我在网上看到的其他一些Spring MVC教程,就像来自tutorialspoint的教程一样,包括jsp&s;并且是基于Web的(而不仅仅是命令行)。这些教程要求您在某些时候将一些罐子(Spring和相关的罐子,如公共​​日志记录)导入到项目中。这些人怎么知道他们需要哪个弹簧罐?它是来自经验还是有这种知识的另一个来源?我认为这种依赖管理是构建工具的全部需求所在,而Gradle将为我处理的事情,没关系,我也不知道如何让Gradle做到这一点。
  5. 一旦我开始一个项目并开始逐步使用Spring,我怎么知道在某些点需要哪些额外的罐子呢?
  6. 感谢您阅读此内容并感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

  

我需要构建工具吗?我认为这是为了团队。

是的,当您使用需要大量jar,类和配置文件来运行应用程序的大型项目时,您需要使用构建工具来处理所有这些事情。构建工具将节省一些时间键入命令。正如您可能猜到的那样,如果您有许多源代码模块并且应该按特定顺序编译和链接,那么使用命令行是不合理的。

你说你是一个开发人员,所以构建工具只是一个开销。

  

如果是这样,Gradle好吗?

确定。

  

以哪个Eclipse模板开头?

动态网站项目。

  

其他一些Spring MVC教程....   这些人怎么知道他们需要哪个弹簧罐?.....

好吧,当你打算使用spring开发一个web应用程序时,你需要有jar文件,如:spring-core.jar,spring-web.jar,spring-webmvc.jar等,当你需要任何ORM时像hibernate这样的框架然后你需要在项目构建路径中添加hibernate相关的jar文件。当您浏览一些教程时,它们将被列为您需要添加的jar或依赖项。

  

一旦我开始一个项目并开始逐步使用Spring,我该怎么做   知道我在某些方面需要哪些额外的罐子?

这取决于您需要在应用程序中进一步使用哪些框架,然后,您应该将框架的所有依赖项(jar文件)提供给项目构建路径。