Servlet笔记——(1.3.2)1.3.2 MyEclipse创建JavaWeb应用
1.3.2 MyEclipse创建JavaWeb应用(重要)
MyEclipse工作空间参数配置
MyEclipse的所有配置都是基于“工作空间”的,更换workspace,需重新配置环境参数。
Windows -- >> Preference -- >>
(1) 工作空间编码:General --- >> Workspace --- >> UTF-8;
(2) 文件编辑器:General --- >> Editors --- >> File Associations --- >> JSP/html/xml --- >> MyEclipse JSP Editors;
(3) 文件编码:MyEclipse Enterprise Workbench --- >> Files and Editors --- >>CSS/HTML/JavaScript/JSP/XML --- >> UTF-8;
(4) 配置JRE:Java --- >> Installed JREs --- >>添加自安装的JRE;
(5) 注册自己的Tomcat:MyEclipse Enterprise Workbench --- >> Servers --- >> Tomcat --- >>……;
(6) 去除MyEclipse自带tomcat:MyEclipse Enterprise Workbench --- >> Servers --- >> Integrated Sandbox --- >> MyEclispe Tomcat 6 --- >> Disable;
(7) 去除MyEclipse Derby:General --- >> Startup and Shutdown --- >> MyEclipse Derby(重启MyEclipse)
(8) 快捷键配置:
General --- >> keys --- >> Word Completion --- >> Remove Binding;
General --- >> keys --- >> Content Assist --- >> Remove Binding --- >>Alt+/ --- >> OK。
MyEclipse创建第一个Web Project
(1) 创建WEB项目(“new”-“Web Project”)。
(2) 发布项目到Tomcat的webapps目录
项目发布后,就把项目的WebRoot目录拷贝到Tomcat的webapps目录中,根据需要可以重命名WebRoot。
(3) 打war包
JavaSE程序可以打包成jar包,JavaEE程序可以打包成war包。然后把war发布到Tomcat的webapps目录下,Tomcat会在启动时自动解压war包。“项目名称右键”-“Export”-“J2EE”-“WAR file(MyEclipse)”-“WAR file”-(直接保存到webapps目录下),文件名即路径,比如“D:\apache-tomcat-6.0.32\webapps\hello.war”
(4) 启动Tomcat,浏览器访问“http://localhost:8080/hello/index.jsp”。
1.3.3 配置外部应用(了解)
原来项目放到webapps下,现在放到外面,也希望tomcat可以找到它!也可以把应用放到Tomcat之外,这就是外部应用了。例如我们把上面写的hello应用从webapps目录中剪切到C盘下,即C:/hello。现在hello这个Web应用已经不在Tomcat中了,这时我们需要在tomcat中配置外部应用的位置,配置的方式有两种:
(1) 打开conf/server.xml文件,找到<Host>元素,在其中添加<Context>元素,代码如下:server.xml
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> |
path:指定当前应用的名称;docBase:指定应用的物理位置;浏览器访问路径:http://localhost:8080/zhb_hello/index.html。
(2) conf/catalana/localhost:在该目录下创建zhb_hello.xml文件,在该文件中编写<Context>
元素,代码如下:
<Context docBase=”c:/hello” /> |
文件名:指定当前应用的名称;docBase:指定应用的物理位置;浏览器访问路径:http://localhost:8080/itcast_hello/index.html。
1.3.4 理解server.xml(了解)
<Server> <service> <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /><Engine> <Host> <Context> |
<Server>:根元素,表示整个服务器的配置信息;
<Service>:<Server>的子元素,在<Server>中只能有一个<Service>元素,它表示服务;
<Connector>:<Service>的子元素,在<Service>中可以有N个<Connector>元素,它表示连接;
<Engine>:<Service>的子元素,在<Service>中只能有一个<Engine>元素,该元素表示引擎,是<Service>组件的核心;
<Host>:<Engine>的子元素,在<Engine>中可以有N个<Host>元素,每个<Host>元素表示一个虚拟主机。所谓虚拟主机就像是真的主机一样,每个主机都有自己的主机名和项目目录。例如“<Host name="localhost" appBase="webapps"”,表示主机名为localhost,这个主机的项目存放在webapps目录中。访问这个项目下的主机时,需要使用localhost主机名。
<Context>:<Host>元素的子元素,在<Host>中可以有多个<Context>元素,每个<Context>元素表示一个应用。如果应用在<Host>的appBase指定目录下,那么可以不配置<Context>元素;如果应用是外部应用,那么就必须配置<Context>。如果需要为应用指定资源,也需要配置<Context>元素。