「JavaWeb」Tomcat服务器的启动以及界面hello world

在jdk与tomcat已经完成之后,也就是这个机器以前跑过javaweb的项目时,新建一个javaweb项目的方法。

Eclipse左上角 new->project
New project 下选择web文件夹中的Dynamic Web Project。
原因:

因为网页即HTML页面,确切的说是页面中的某些数据,是由Servlet动态生成的。

之后显示如下
「JavaWeb」Tomcat服务器的启动以及界面hello world
Projectname需要填写,由于eclipse之前已经配好tomcat一类 并且以前做过此类项目,Target runtime和Dynamic web module version默认就已经被填好。
相关解释:

这里重点要注意的是Target runtime和Dynamic web module version,前者就是配置我们开发的这个Java Web应用所要运行的目标环境,当然指的就是Servlet容器了,当然我们是使用Tomcat这个Servlet容器,还有很多其他的Servlet容器,比如WebSphere、WebLogic、JBoss等等。后者其实配置的就是Servlet技术或者规范的版本,在后面提到的部署描述符里就有该版本号。这两个后面都可以单独配置,现在使用默认值就可以了。

servlet容器为tomcat,也就是Target runtime中的内容。
再连续两个next之后,默认选择好了文件位置和资源路径等。在点击第二个next之前,注意勾选Generate web.xml deployment descriptor
「JavaWeb」Tomcat服务器的启动以及界面hello world
「JavaWeb」Tomcat服务器的启动以及界面hello world
勾选Generate web.xml deployment descriptor的原因:

为这个Web应用生成一个配置文件(文件名就是web.xml),这个配置文件有个称呼叫部署描述符。顾名思义,它就是描述该Web应用部署时的相关配置,比如你为该Web应用开发的各个Servlet以及它们映射到该Web应用的URL是什么,以后还有过滤器、监听器、安全约束等等,总之就是该Web应用的配置就是了。
那这个配置文件给谁来读取?当然就是目标运行环境,就是加载该Web应用的Servlet容器。

之后可以finish了

弹出小窗口问你要不要java ee视图,当然要啦

服务器的创建与helloworld

上述的project创建完成后,可在界面 (有时是)下方 在console的附近看见有servers,配置好的的tomcat已经显示在这里

「JavaWeb」Tomcat服务器的启动以及界面hello world
右上角的debug界面等等小按钮旁边,显示了现在处于选中java ee视图中。
「JavaWeb」Tomcat服务器的启动以及界面hello world

启动tomcat

  1. 添加此project入tomcat
    右键上图servers下的tomcat v7.0… 选择add and remove
    显示如下
    「JavaWeb」Tomcat服务器的启动以及界面hello world
    将此次的GradProject加入tomcat,左边为这次新建的项目,右边为tomcat上以前有的项目。
    可以将右侧的remove回左侧,左侧新的项目add进右侧。
    (我这步一开始忘记做了就是404
    「JavaWeb」Tomcat服务器的启动以及界面hello world
  2. 同步
    右键tomcat v7.0… 将应用发布pulish至服务器上

每当Web资源包括Java代码有变化,就需要重新发布(英文是Republish)
「JavaWeb」Tomcat服务器的启动以及界面hello world
「JavaWeb」Tomcat服务器的启动以及界面hello world

完成后,tomcat后的参数多跟了synchronized(同步「JavaWeb」Tomcat服务器的启动以及界面hello world
3. 启动服务器
右键tomcat 选择start

「JavaWeb」Tomcat服务器的启动以及界面hello world
切换console视图,可以看见服务器启动的相关信息 日志

也可以直接执行Tomcat安装目录的bin目录下的启动脚本来启动Tomcat是一样的

「JavaWeb」Tomcat服务器的启动以及界面hello world
4. 随意打开浏览器 输入http://localhost:8080/你的projectname/
网页显示如下
「JavaWeb」Tomcat服务器的启动以及界面hello world
5. 别忘了在webcontent文件夹下建立.jsp 或者.html 不然404
「JavaWeb」Tomcat服务器的启动以及界面hello world
P.S. 每次写好页面代码后 都别忘了在服务器中refresh一下,也就是使其publish(点击) 到synchronized(同步状态)。不要像我以前一样每次写完代码在界面上显示之前,都把服务器停掉重启…qaq

一些解释:
为什么不需要在浏览器的地址栏里面输入index.html相关内容,只需要Project名就可以直接显示出index.html的内容呢?

部署描述符web.xml中指定了这个Web应用的首页

点击WEB-INF文件夹下的web.xml查看
「JavaWeb」Tomcat服务器的启动以及界面hello world
在welcome-file-list中可以看到界面显示的相关内容,默认了index.html

在web-app中的version项可以看见3.0版本,同样可以输入http://localhost:8080/你的projectname/index.html来访问index.html

希望地址栏不显示project的名称 修改

URL中的project名称,就是在新建project时第二次点next界面中提到的content root,
(下图在新建时出现过)
「JavaWeb」Tomcat服务器的启动以及界面hello world
在project已经建好后,如果还是想修改content root,可以在project名上右键,点击最下面的properties
「JavaWeb」Tomcat服务器的启动以及界面hello world
在 properties中的web project setting中,可以修改GradProject名字

「JavaWeb」Tomcat服务器的启动以及界面hello world

假设我们把它修改为My,然后点击Apply and Close,然后发布该应用,再启动服务器,中间过程会有一些提示对话框,都是确认根路径修改的,点击肯定的按钮即可。这时浏览器上URL必须是http://localhost:8080/My或http://localhost:8080/My/index.html才能访问该网页。
URL的组成:前面是协议、域名和端口号,接着的是Web应用的Context root(中文就叫上下文路径或根路径等),后面的是该Web应用的资源目录中的路径(但是WEB-INF目录中的不可访问),由于index.html直接在资源路径底下,所以Context root直接加上index.html就可以访问该网页了。

参考文章
Eclipse(2)- 配置JDK、新建Web工程、配置Tomcat和发布应用、添加JAR包