【JavaEE WEB 开发】Tomcat 具体解释 Servlet 入门
转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/47146817
一. Tomcat 下载安装配置
1. Tomcat 下载
Tomcat 下载 :
-- 下载地址 : http://tomcat.apache.org ;
-- 下载页面 :
-- 下载相应平台的版本号 : 有 MAc/Linux 平台, Windows 平台的server软件;
2. Tomcat 执行 (Linux/Mac 环境)
Tomcat 执行 (Mac/Linux) :
-- 进入 Tomcat 安装文件夹 :
localhost:apache-tomcat-6.0.44 octopus$ pwd
/Users/hanshuliang/develop/apache-tomcat-6.0.44
localhost:apache-tomcat-6.0.44 octopus$ ls
LICENSE RELEASE-NOTES bin lib temp work
NOTICE RUNNING.txt conf logs webapps
localhost:apache-tomcat-6.0.44 octopus$
-- 进入 bin 文件夹 :
localhost:apache-tomcat-6.0.44 octopus$ cd bin/
localhost:bin octopus$ ls
bootstrap.jar cpappend.bat shutdown.bat tool-wrapper.bat
catalina-tasks.xml daemon.sh shutdown.sh tool-wrapper.sh
catalina.bat digest.bat startup.bat version.bat
catalina.sh digest.sh startup.sh version.sh
commons-daemon-native.tar.gz setclasspath.bat tomcat-juli.jar
commons-daemon.jar setclasspath.sh tomcat-native.tar.gz
-- 执行启动命令 : 特别注意, 须要使用 root 权限启动, 否则会报出权限错误, 使用命令 sudo ./startup.sh ;
localhost:bin octopus$ sudo ./startup.sh
Using CATALINA_BASE: /Users/hanshuliang/develop/apache-tomcat-6.0.44
Using CATALINA_HOME: /Users/hanshuliang/develop/apache-tomcat-6.0.44
Using CATALINA_TMPDIR: /Users/hanshuliang/develop/apache-tomcat-6.0.44/temp
Using JRE_HOME: /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home
Using CLASSPATH: /Users/hanshuliang/develop/apache-tomcat-6.0.44/bin/bootstrap.jar
-- 查看是否启动 : 打开浏览器, 输入 localhost:8080 网址, 查看是否出现 Tomcat 页面;
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />
3. Tomcat 执行 (Windows 环境)
Tomcat 执行 (Windows) :
-- 进入 Tomcat 安装文件夹 :
-- 进入 bin 文件夹 : 启动 startup 可执行程序;
-- 浏览器验证 : 在浏览器输入 http://localhost:8080/ 网址, 出现以下界面即配置正确;
3. Tomcat 错误排除
(1) 启动闪退问题
启动闪退 : 没有配置 JAVA_HOME 环境变量, 使用 Tomcat 时, 必须配置 JAVA_HOME 环境变量;
-- 闪退原因 : tomcat 启动后, 会查找 JAVA_HOME 环境变量, 之后还会查找 CATALINA_HOME 环境变量 (Tomcat 根文件夹), CATALINA_HOME 这个变量建议不设置;
(2) CATALINA_HOME 配置出现故障
CATALINA_HOME 问题 : 不建议配置 CATALINA_HOME 环境变量;
-- 配置 CATALINA_HOME 出现的问题 : 假设有多个 Tomcat, 在随意 Tomcat 中启动, 仅仅会启动 CATALINA_HOME 指定的 Tomcat 文件夹;
-- 不配置 CATALINA_HOME : 在什么地方启动, 就会到启动 startup 命令的 会将 命令所在的 Tomcat 启动;
(3) 端口问题
端口占用问题解决方式 :
-- 1. 关闭占用端口的进程 : 使用 cports 软件查看占用端口的进程, 将其关闭就可以, 任务管理器是看不到端口的;
-- 2. 改动 Tomcat 的 HTTP 端口 : 在 tomcat 的 conf/server.xml 中改动以下的配置, 默认 8080 , 改动成一个 其它的数字;
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL HTTP/1.1 Connector on port 8080
-->
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
4. Tomcat 配置 与 文件夹
(1) 浏览器端口设置
訪问server端口配置 :
-- 配置文件 : apache-tomcat-6.0.39\conf\server.xml;
-- 配置内容 : 当前默认设置的端口号是 8080, 訪问地址是 http://localhost:8080/;
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL HTTP/1.1 Connector on port 8080
-->
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
(2) Tomcat 共享资源
共享一个资源 :
-- 创建 html 页面 : 创建一个 index.html 文档, 里面随便写一写字符串;
-- 将文件放到 webapps 中的文件夹中 : 在 webapps 中创建一个随意名称文件夹 test, 然后将 index.html 放置到该文件夹中;
-- 启动 Tomcat :
-- 浏览器中输入 : 浏览器地址栏输入 http://localhost:8080/test/index.html 地址;
(3) URL 解析
解析 url 地址 : http://localhost:8080/test/index.html;
-- "http://" : url 所使用的协议名称, http 协议;
-- "localhost" : 域名, 相当于 IP 地址;
-- 8080: : Tomcat 所使用的端口号;
-- /test : Tomcat 共享文件夹的名称, 在 webapps 以下的共享文件夹;
-- index.html : 共享文件名;
(4) 文件夹解析
Tomcat 文件夹解析 :
-- 文件夹截图 :
-- bin 文件夹 : Tomcat 的命令路径, 包含 启动 关闭 Tomcat server;
-- conf 文件夹 : Tomcat 配置文件文件夹, 当中 server.xml 用于配置端口号;
-- lib 文件夹 : Tomcat 的支持包;
-- logs 文件夹 : 执行产生的日志信息存放文件夹;
-- temp 文件夹 : 暂时文件存放文件夹;
-- webapps 文件夹 : 共享资源文件夹, 不能单独共享一个文件, 须要创建的文件夹, 将文件放到一个文件夹中才干共享;
-- work 文件夹 : tomcat 执行时的工作文件夹;
转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/47146817
二. J2EE 应用创建
1. 创建 J2EE 应用
(1) MyEclipse 中创建应用
MyEclipse 创建 Web 应用 :
-- 创建应用 : 选择 File -> New -> Web Project 选项;
-- 配置应用信息 : 注意 我们使用的是 Tomcat 6.0 版本号, 相应 JavaEE 5.0 版本号;
-- 创建 Tomcat server : 选择 Window -> Preference -> MyEclipse -> Server -> Tomcat 6.x 选项, 进行例如以下配置 :
-- 配置后效果 :
-- 部署应用 : 右键点击server, 选择 Add Deployment;
-- 将刚创建的 Hello World 部署到 Tomcat 中去 :
-- 部署后效果 :
-- 执行 Tomcat server : 地址栏输入 http://localhost:8080/HelloWorld/ 地址;
-- MyEclipse 应用文件截图 :
(2) eclipse 中创建应用
Eclipse 创建 Web 应用 :
-- 创建 Dynamic Web Project :
-- 配置 应用 :
-- 应用文件夹展示 :
(3) Eclipse 和 MyEclipse 中创建应用server版本号相应
Eclipse server版本号相应 :
-- dynamic web module 2.4 <--> Tomcat 5.5
-- dynamic web module 2.5 <--> Tomcat 6.0
-- dynamic web module 3.0 <--> Tomcat 7.0
MyEclipse server版本号相应 :
-- JavaEE 5.0 <--> Tomcat 6.0
-- J2EE 1.4 / J2EE 1.3 <--> Tomcat 5.5
2. Servlet 简单演示样例
(1) Servlet 演示样例
Servlet 简单演示样例 :
-- MyServlet.java 代码 :
package cn.org.octopus.hello; import java.io.IOException;
import java.util.Date; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class MyServlet extends HttpServlet{ @Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
//避免出现中文乱码
resp.setContentType("text/html;charset=utf-8");
//输出内容
resp.getWriter().write("当前时间 : " + new Date());
} }
-- web.xml 配置文件 :
<? xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list> <!-- 配置 Servlet 须要配置 Servlet 和 Servlet-mapping 两个标签 -->
<servlet>
<!-- Servlet 内部名称-->
<servlet-name>HelloWorld</servlet-name>
<!-- Servlet 全路径名-->
<servlet-class>cn.org.octopus.hello.MyServlet</servlet-class>
</servlet> <servlet-mapping>
<!-- Servlet 内部名称-->
<servlet-name>HelloWorld</servlet-name>
<!-- servlet 訪问名称 -->
<url-pattern>/HelloWorld</url-pattern>
</servlet-mapping> </web-app>
-- 执行效果 :
最新文章
- Android IOS WebRTC 音视频开发总结(七七)-- WebRTC的架构和协议栈
- Android性能优化文章转载
- Skyline6.5系列覆盖三维地理信息产业上下游
- Wireless Network
- Power Network 分类: POJ 2015-07-29 13:55 3人阅读 评论(0) 收藏
- 用Tupper自我指涉公式造图
- source install MacPorts--checking for Tcl configuration... configure: error: Can&#39;t find Tcl configuration definitions
- ajax请求后台,有时收不到返回值的解决办法
- pandas 常用技巧总结
- ubuntu 下无损扩展分区
- uboot移植
- 什么?作为程序员的你还不知道怎么访问 Google
- gitbash上使用tree
- Java 并发优化
- NOIp 2018 普及组
- LPC-LINK 2 Board IO TABLE
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(1) Calendar
- 使用typed.js实现页面上的写字功能
- Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2
- ADO.NET知识学习总结