blob: 9de59cbe65630fb8662ab71bb05873568f5440a5 [file] [log] [blame]
刘洪青6266f992017-05-15 21:21:03 +08001<html><head><META http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>Application Developer's Guide (7.0.77) - Introduction</title><meta name="author" content="Craig R. McClanahan"><style type="text/css" media="print">
2 .noPrint {display: none;}
3 td#mainBody {width: 100%;}
4</style><style type="text/css">
5code {background-color:rgb(224,255,255);padding:0 0.1em;}
6code.attributeName, code.propertyName {background-color:transparent;}
7
8
9table {
10 border-collapse: collapse;
11 text-align: left;
12}
13table *:not(table) {
14 /* Prevent border-collapsing for table child elements like <div> */
15 border-collapse: separate;
16}
17
18th {
19 text-align: left;
20}
21
22
23div.codeBox pre code, code.attributeName, code.propertyName, code.noHighlight, .noHighlight code {
24 background-color: transparent;
25}
26div.codeBox {
27 overflow: auto;
28 margin: 1em 0;
29}
30div.codeBox pre {
31 margin: 0;
32 padding: 4px;
33 border: 1px solid #999;
34 border-radius: 5px;
35 background-color: #eff8ff;
36 display: table; /* To prevent <pre>s from taking the complete available width. */
37 /*
38 When it is officially supported, use the following CSS instead of display: table
39 to prevent big <pre>s from exceeding the browser window:
40 max-width: available;
41 width: min-content;
42 */
43}
44
45div.codeBox pre.wrap {
46 white-space: pre-wrap;
47}
48
49
50table.defaultTable tr, table.detail-table tr {
51 border: 1px solid #CCC;
52}
53
54table.defaultTable tr:nth-child(even), table.detail-table tr:nth-child(even) {
55 background-color: #FAFBFF;
56}
57
58table.defaultTable tr:nth-child(odd), table.detail-table tr:nth-child(odd) {
59 background-color: #EEEFFF;
60}
61
62table.defaultTable th, table.detail-table th {
63 background-color: #88b;
64 color: #fff;
65}
66
67table.defaultTable th, table.defaultTable td, table.detail-table th, table.detail-table td {
68 padding: 5px 8px;
69}
70
71
72p.notice {
73 border: 1px solid rgb(255, 0, 0);
74 background-color: rgb(238, 238, 238);
75 color: rgb(0, 51, 102);
76 padding: 0.5em;
77 margin: 1em 2em 1em 1em;
78}
79</style></head><body bgcolor="#ffffff" text="#000000" link="#525D76" alink="#525D76" vlink="#525D76"><table border="0" width="100%" cellspacing="0"><!--PAGE HEADER--><tr><td><!--PROJECT LOGO--><a href="http://tomcat.apache.org/"><img src="../images/tomcat.gif" align="right" alt="
Hongqing Liufd5ee812014-05-10 16:32:51 +080080 The Apache Tomcat Servlet/JSP Container
刘洪青6266f992017-05-15 21:21:03 +080081 " border="0"></a></td><td><h1><font face="arial,helvetica,sanserif">Apache Tomcat 7</font></h1><font face="arial,helvetica,sanserif">Version 7.0.77, Mar 28 2017</font></td><td><!--APACHE LOGO--><a href="http://www.apache.org/"><img src="../images/asf-logo.svg" align="right" alt="Apache Logo" border="0" style="width: 266px;height: 83px;"></a></td></tr></table><table border="0" width="100%" cellspacing="4"><!--HEADER SEPARATOR--><tr><td colspan="2"><hr noshade size="1"></td></tr><tr><!--LEFT SIDE NAVIGATION--><td width="20%" valign="top" nowrap class="noPrint"><p><strong>Links</strong></p><ul><li><a href="../index.html">Docs Home</a></li><li><a href="index.html">App Dev Guide Home</a></li><li><a href="http://wiki.apache.org/tomcat/FAQ">FAQ</a></li><li><a href="#comments_section">User Comments</a></li></ul><p><strong>Contents</strong></p><ul><li><a href="index.html">Contents</a></li><li><a href="introduction.html">Introduction</a></li><li><a href="installation.html">Installation</a></li><li><a href="deployment.html">Deployment</a></li><li><a href="source.html">Source Code</a></li><li><a href="processes.html">Processes</a></li><li><a href="sample/">Example App</a></li></ul></td><!--RIGHT SIDE MAIN BODY--><td width="80%" valign="top" align="left" id="mainBody"><h1>Introduction</h1><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Overview"><strong>Overview</strong></a></font></td></tr><tr><td><blockquote>
Hongqing Liufd5ee812014-05-10 16:32:51 +080082
83<p>Congratulations! You've decided to (or been told to) learn how to
84build web applications using servlets and JSP pages, and picked the
85Tomcat server to use for your learning and development. But now what
86do you do?</p>
87
88<p>This manual is a primer covering the basic steps of using Tomcat to
89set up a development environment, organize your source code, and then
90build and test your application. It does not discuss architectures or
91recommended coding practices for web application development,
92or provide in depth instructions on operating the development
93tools that are discussed. References to sources of additional information
94are included in the following subsections.</p>
95
96<p>The discussion in this manual is aimed at developers who will be using
97a text editor along with command line tools to develop and debug their
刘洪青6266f992017-05-15 21:21:03 +080098applications. As such, the recommendations are fairly generic &ndash; but you
Hongqing Liufd5ee812014-05-10 16:32:51 +080099should easily be able to apply them in either a Windows-based or Unix-based
100development environment. If you are utilizing an Integrated Development
101Environment (IDE) tool, you will need to adapt the advice given here to
102the details of your particular environment.</p>
103
104</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Links"><strong>Links</strong></a></font></td></tr><tr><td><blockquote>
105
106<p>The following links provide access to selected sources of online
107information, documentation, and software that is useful in developing
108web applications with Tomcat.</p>
109<ul>
刘洪青6266f992017-05-15 21:21:03 +0800110<li><p><a href="http://jcp.org/aboutJava/communityprocess/mrel/jsr245/index.html">http://jcp.org/aboutJava/communityprocess/mrel/jsr245/</a> -
111 <i>JavaServer Pages (JSP) Specification, Version 2.2</i>. Describes
Hongqing Liufd5ee812014-05-10 16:32:51 +0800112 the programming environment provided by standard implementations
113 of the JavaServer Pages (JSP) technology. In conjunction with
114 the Servlet API Specification (see below), this document describes
115 what a portable API page is allowed to contain. Specific
116 information on scripting (Chapter 9), tag extensions (Chapter 7),
117 and packaging JSP pages (Appendix A) is useful. The Javadoc
118 API Documentation is included in the specification, and with the
刘洪青6266f992017-05-15 21:21:03 +0800119 Tomcat download.</p></li>
120<li><p><a href="http://jcp.org/aboutJava/communityprocess/mrel/jsr315/index.html">http://jcp.org/aboutJava/communityprocess/mrel/jsr315/</a> -
121 <i>Servlet API Specification, Version 3.0</i>. Describes the
Hongqing Liufd5ee812014-05-10 16:32:51 +0800122 programming environment that must be provided by all servlet
123 containers conforming to this specification. In particular, you
124 will need this document to understand the web application
刘洪青6266f992017-05-15 21:21:03 +0800125 directory structure and deployment file (Chapter 10), methods of
126 mapping request URIs to servlets (Chapter 12), container managed
127 security (Chapter 13), and the syntax of the <code>web.xml</code>
128 Web Application Deployment Descriptor (Chapter 14). The Javadoc
Hongqing Liufd5ee812014-05-10 16:32:51 +0800129 API Documentation is included in the specification, and with the
刘洪青6266f992017-05-15 21:21:03 +0800130 Tomcat download.</p></li>
Hongqing Liufd5ee812014-05-10 16:32:51 +0800131</ul>
132
刘洪青6266f992017-05-15 21:21:03 +0800133</blockquote></td></tr></table></td></tr><tr class="noPrint"><td width="20%" valign="top" nowrap class="noPrint"></td><td width="80%" valign="top" align="left"><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="comments_section" id="comments_section"><strong>Comments</strong></a></font></td></tr><tr><td><blockquote><p class="notice"><strong>Notice: </strong>This comments section collects your suggestions
134 on improving documentation for Apache Tomcat.<br><br>
135 If you have trouble and need help, read
136 <a href="http://tomcat.apache.org/findhelp.html">Find Help</a> page
137 and ask your question on the tomcat-users
138 <a href="http://tomcat.apache.org/lists.html">mailing list</a>.
139 Do not ask such questions here. This is not a Q&amp;A section.<br><br>
140 The Apache Comments System is explained <a href="../comments.html">here</a>.
141 Comments may be removed by our moderators if they are either
142 implemented or considered invalid/off-topic.</p><script type="text/javascript"><!--//--><![CDATA[//><!--
143 var comments_shortname = 'tomcat';
144 var comments_identifier = 'http://tomcat.apache.org/tomcat-7.0-doc/appdev/introduction.html';
145 (function(w, d) {
146 if (w.location.hostname.toLowerCase() == "tomcat.apache.org") {
147 d.write('<div id="comments_thread"><\/div>');
148 var s = d.createElement('script');
149 s.type = 'text/javascript';
150 s.async = true;
151 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
152 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
153 }
154 else {
155 d.write('<div id="comments_thread"><strong>Comments are disabled for this page at the moment.<\/strong><\/div>');
156 }
157 })(window, document);
158 //--><!]]></script></blockquote></td></tr></table></td></tr><!--FOOTER SEPARATOR--><tr><td colspan="2"><hr noshade size="1"></td></tr><!--PAGE FOOTER--><tr><td colspan="2"><div align="center"><font color="#525D76" size="-1"><em>
159 Copyright &copy; 1999-2017, Apache Software Foundation
Hongqing Liufd5ee812014-05-10 16:32:51 +0800160 </em></font></div></td></tr></table></body></html>