想必大家在使用MyEclipse时对这两个概念不去深究。只知道是Java EE类的基本都是Web项目,而Java应用程序就是Java项目。而且很多人都愿意使用MyEclipse作为开发工具,且不说大家费尽心思去破解这个东西,而且那么多插件在启动时的加载速度和内存占用,你甘心这么玩嘛?不甘心?继续阅读本文!无所谓,您可以去做点其他事情不要浪费时间在这里。当然本文不去解释如何优化MyEclipse,相关说明大家更可以Google一下。
本人使用Classic Eclipse+所需插件(如WTP,SVN)+Tomcat6构建的开发环境,不仅插件按需安装,而且运行速度快,占用内存小。
现在只是说说Java Project和Web Project,那么二者有区别么?回答:没有!都是Java语言的应用,只是应用场合不同罢了,那么他们的本质到底是什么?回答:编译后路径!虚拟机执行的是class文件而不是java文件,那么我们不管是何种项目都是写的java文件,怎么就不一样了呢?分成java和web两种了呢?
从.classpath文件入手来看,这个文件在每个项目目录下都是存在的,很少有人打开看吧,那么我们就来一起看吧。这是一个XML文件,使用文本编辑器打开即可。
这里展示一个web项目的.classpath,当然高手一眼就可以看出其作用了
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="resources"/>
<classpathentry kind="src" path="test"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="lib/servlet-api.jar"/>
<classpathentry kind="lib" path="webapp/WEB-INF/lib/struts2-core-2.1.8.1.jar"/>
……
<classpathentry kind="output" path="webapp/WEB-INF/classes"/>
</classpath>
XML文档包含一个根元素,就是classpath,类路径,那么这里面包含了什么信息呢?子元素是classpathentry,kind属性区别了种类信息,src源码,con你看看后面的path就知道是JRE容器的信息。lib是项目依赖的第三方类库,output是src编译后的位置。
既然是web项目,那么就是WEB-INF/classes目录,可能用MyEclipse的同学会说他们那里是WebRoot或者是WebContext而不是webapp,有区别么?回答:完全没有!
既然看到了编译路径的本来面目后,还区分什么java项目和web项目么?回答:不区分!普通的java 项目你这样写就行了:<classpathentry kind="output" path="bin"/>,看看Eclipse是不是这样生成的?这个问题解决了吧。
再说说webapp目录命名的问题,这个无所谓啊,web项目是要发布到服务器上的对吧,那么服务器读取的是类文件和页面文件吧,它不管源文件,它也无法去理解源文件。那么webapp目录的命名有何关系呢?只要让服务器找到不就行了。
希望对学习者有所帮助。当然IDE的选择完全是个人偏好,只是明白了本质能有更好的选择。
分享到:
相关推荐
JavaProject工程通常是一个标准的Java应用程序,主要包含源代码、资源文件等,而Web项目则是构建Web应用的基础,它需要额外的配置和结构以支持动态网页(如JSP)、Servlet以及Web容器(如Tomcat)的运行。将Java...
本资源里面包含了在java project工程下如何使用log4j,在java web工程(servlet和struts2)下如何使用log4j,并且对log4j的加载机制,原理进行了详细的介绍和解释,代码部分也进行了详细的注释,值得你看看。
在Eclipse这个强大的Java集成开发环境中,我们常常会遇到两种类型的项目:Eclipse下的Tomcat Project和Web Dynamic Project。这两种项目类型虽然都是用于开发Web应用,但它们在用途、结构和配置上存在一定的差异。 ...
在给定的“Java project code7”项目中,我们可以看到两个关键的目录:“META-INF”和“WEB-INF”。这两个目录在Java Web应用中尤其常见,它们各自承载着特定的功能和信息。 1. **META-INF目录**: - **MANIFEST....
【标题】"javaProject.zip" 是一个包含Java项目源代码的压缩文件,它通常用于存储开发者编写的Java应用程序或Web应用程序的所有相关文件。这个压缩包可能是为了方便分发、备份或者版本控制而创建的。 【描述】"java...
【标题】"javaproject"指的是一个基于Java编程语言的项目。这可能是一个软件开发项目,涵盖了一系列的Java源代码文件、配置文件和其他相关资源,用于实现特定的功能或服务。 【描述】描述中提到“暂时存储一下这个...
Java项目中的用户JDBC操作是Java开发者...总的来说,"java project user jdbc"项目涉及了JDBC的使用、用户管理的业务逻辑实现以及Java Web应用的基本结构。理解并掌握这些知识点,对于进行Java数据库编程是非常重要的。
通过以上步骤,你就能在Eclipse JEE环境中成功创建一个Maven项目并将其转换为Dynamic Web Project,从而方便地进行Java Web应用的开发和调试。记住,维护好`pom.xml`文件是确保项目可构建和依赖管理的关键。同时,...
Tomcat作为一款广泛应用的Java Servlet容器,是许多开发者部署和测试Web应用的首选。本知识点将详细讲解如何在Eclipse环境下利用特定插件来调试Java项目在Tomcat服务器上的运行情况。 标题提及的"java project在...
【标签】"java java_project project" 这些标签进一步确认了项目的核心技术和类型。"java" 指的是编程语言,"java_project" 表明这是一个Java项目,"project" 暗示这是一项开发任务或学习实践。 **知识点详解:** ...
在Java开发领域,Spring和Hibernate是两个非常重要的框架。Spring是一个全面的后端应用程序框架,提供了依赖...在学习过程中,确保理解每一个组件的作用以及它们之间的协作方式,这对于提升Java Web开发技能至关重要。
"Java project code5"可能是一个具体的Java应用程序或Web应用项目,其包含的文件和目录反映了项目的组织方式。让我们逐一解析这些关键元素。 1. **category.json**: `category.json` 文件很可能存储了项目的分类...
【标题】"java web project which light" 暗示我们关注的是一个轻量级的Java Web项目,可能涉及到了简洁的架构和不依赖外部JAR库的实现。在这个项目中,重点可能是如何构建一个高效、易维护且轻便的Web应用。 ...
【标签】"web_project web_project" 强调了这是一个Web开发项目,可能意味着该项目包含了一系列与Web开发相关的组件和配置,如HTML、CSS、JavaScript(包括可能的jQuery库或类似的前端框架)、JSP(JavaServer Pages...
"Webproject"是一个Java动态Web项目,这类项目主要用于构建交互性强、内容动态更新的Web应用程序。在Java领域,动态Web项目是基于Java EE(企业版)或其简化版Java Web来开发的,它允许开发者创建服务器端应用,这些...
总体而言,这个"java-web-project"是一个融合了Java后端技术和JavaScript前端技术的项目,其目标是构建一个能够有效管理货品的系统。在实际开发过程中,开发者需要掌握包括但不限于Servlet、JDBC、MVC设计模式、...
本项目“Flash和jsp,Flash和Java交互的web project”旨在演示和实现这些技术间的协同工作,为用户提供更丰富的交互体验。 Flash是一种由Adobe公司开发的多媒体创作工具,它用于创建动画、图形、视频以及交互式内容...
本项目名为"Java_project.rar",它是一个Java项目的压缩包,包含了完整的源代码,可供学习和参考。这个项目可能是一个综合性的系统,涵盖了Java编程的多个方面,如前端界面、后端服务、数据库交互等。 首先,Java...
总的来说,"Java project code1"是一个涵盖了Java开发核心概念和最佳实践的实例,通过分析"taotao-manager"中的代码,我们可以学习到Java项目中的模块化设计、MVC模式、框架集成、数据库操作、网络通信、安全机制...
Jetty是一款轻量级、高性能的Java Web服务器和Servlet容器,它对WebSocket的支持非常完善。 在标题提到的"Java Web Project开发WebSocket服务端/客户端"项目中,开发者选择了Jetty作为服务器平台。Jetty 7.0版本的...