[英]what are the steps in order to run java enterprise application
对不起这个简单的问题,但是我对如何运行Java应用程序感到困惑。 每当我问一些人时,每个人都会告诉他自己的工具以继续进行,而我已经学到了这一点。
因此,只要我有一个简单的基本日食,没有插件,并且我下载了使用spring,hibernate,mysql,
该应用的文件夹结构为
.setting
src--main,test
target
.classpath
.project
现在我想在浏览器中使用localhost运行它
我需要做什么。 我会根据我的知识告诉我,你们可以纠正它,我不想使用STS或在Eclipse中安装任何插件。
我不知道maven,appfuse如何适合这里。 如果可以的话,我可以在没有maven的情况下运行应用程序吗,那么maven到底可以做什么,我的意思是它可以编译java文件还是什么。 如果我需要Maven,那么
对基本问题感到抱歉,但我对所有新的术语感到困惑
构建Web应用程序很复杂。 我将尝试解决您的特定问题。
显然,您不需要Maven或Appfuse,两者都非常有用。
Maven是一个构建工具。 Maven和Eclipse执行一些类似的任务。 两者都可以编译您的代码并管理类路径。 Maven开箱即用地处理很多默认情况下Eclipse无法完成的事情。 Maven可以管理依赖项(即为您下载spring jar)并创建复杂的构建过程。
如果您不熟悉Maven并从头开始创建构建文件,则可能不会有太大帮助。 如果您在其他地方有pom.xml(Maven构建文件),那么Maven可能会大有帮助。 Maven的结果取决于构建文件的结构。 结果通常是.war文件(在下面的步骤5中描述),或者应用程序直接部署到Web服务器(在下面的步骤6中描述)。
压贴也不是强制性的,但可能有用。 Appfuse将为您创建一个骨架项目。 这样做时,它将创建一个pom.xml(Maven构建文件)以自动构建您的项目。 除了帮助启动项目之外,Appfuse本身不做任何其他事情。 大多数人不再从头开始构建Web应用程序,因为正确设置目录结构和创建构建文件可能需要很多工作,而且很容易出错。 Spring Roo是类似于Appfuse的工具。
Tomcat,Glassfish,Jetty和JBoss是Web服务器。 它们通常也称为Servlet容器,它只是以某种方式托管servlet的Web服务器的另一个名称。 它们中的任何一个都可以为您的项目工作,它们都有不同的学习曲线。 将它们集成到Eclipse中可能对您有用,当我开始使用时,我发现将它们分开很容易(尽管会慢一些)。
在JDK中,有一个名为javax.servlet.Servlet的接口。 这是Web应用程序的入口类必须实现的接口。 特别是,每次有URL请求时都会调用方法service(ServletRequest req, ServletResponse res)
。 如果您希望Web应用程序响应HTTP,则扩展抽象类HttpServlet
(实现Servlet)可能会更简单。 大多数库(即Spring Web框架)都有自己的Servlet实现,它们是该库的入口。
现在,我将描述构建Web应用程序的基本过程。 这是一个复杂的过程,大多数人最终都使用Maven将其自动化。 我不建议您自己尝试手动完成该过程,这可能会非常复杂,但是您可以根据需要进行操作。 我将假设您将所有已构建文件放置在名为$ BUILD的文件夹中
这是Web应用程序部署的基础。 您的Web服务器将提取war文件并将lib文件夹中的所有jar加载到类路径中。 然后,它将获取接收到的所有URL请求,并将其发送到部署描述符中声明的相应Servlet实现。
如您所见,这不是一个简单的过程。 这就是Appfuse和Roo之类的工具存在的原因。 他们尝试为您提供一个起点,为您完成所有这些基本工作。 如果您遇到问题,建议您使用Appfuse / Roo从头开始尝试。 随着您开始掌握各种技巧,我还建议您进一步了解Maven(或Ivy + Ant)以为您处理依赖项。
您应该下载Eclipse的Java EE版本-它包含使用企业应用程序所需的代码。
您还将需要一个企业服务器(如JBoss或Glassfish)和相应的服务器适配器,这对于初学者来说有点过多。
最简单的入门方法是使用Glassfish下载Netbeans,并至少在当前使用它,因为一切都已正确配置,并且入门非常快! 当您对工作方式更加熟悉时,可以根据需要切换回Eclipse。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.