1、手工创建一个Web工程
- <form action="../servletForm" method="get">
- username: <input type="text" name="uname">
- <input type="submit" value="提交">
- </form>
- <form method="get" action="handle">
- <table>
- <tr>
- <th><label for="usercode">工号</label></th>
- <td><input type="text" id="usercode" name="usercode" /></td>
- </tr>
- <tr>
- <th><label for="ip">机器IP</label></th>
- <td><input type="text" id="ip" name="ip" /></td>
- </tr>
- <tr>
- <th><label for="reason">申请原因</label></th>
- <td><input type="text" id="reason" name="reason" /></td>
- </tr>
- <tr>
- <th><label for="submit"></label></th>
- <td>
- <button type="submit" id="submit" name="submit">submit</button>
- <label for="reset"></label>
- <button type="reset" id="reset" name="reset">reset</button>
- </td>
- </tr>
- </table>
- </form>
- <?xml version="1.0" encoding="UTF-8"?>
- <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
- id="WebApp_ID" version="2.5">
- <display-name>server.manager</display-name>
- <servlet>
- <servlet-name>default</servlet-name>
- <servlet-class>org.mortbay.jetty.servlet.DefaultServlet</servlet-class>
- <init-param>
- <param-name>useFileMappedBuffer</param-name>
- <param-value>false</param-value>
- </init-param>
- <load-on-startup>0</load-on-startup>
- </servlet>
- <servlet>
- <servlet-name>HandleServlet</servlet-name>
- <servlet-class>com.alibaba.servermanager.HandleServlet</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>HandleServlet</servlet-name>
- <url-pattern>/handle</url-pattern>
- </servlet-mapping>
- <welcome-file-list>
- <welcome-file>index.html</welcome-file>
- </welcome-file-list>
- </web-app>
- import java.io.IOException;
- import javax.servlet.*;
- import javax.servlet.http.*;
- public class HandleServlet extends HttpServlet {
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- this.doPost(request, response);
- }
- protected void doPost(HttpServletRequest request,
- HttpServletResponse response) throws ServletException, IOException {
- String usercode = request.getParameter("usercode");
- HttpSession session = request.getSession();
- session.setAttribute("usercode", usercode);
- System.out.println("usercode: " + usercode);
- response.sendRedirect("success.jsp");
- }
- }
- request.setAttribute("hello", "Hello World");
- request.getRequestDispatcher("/jstl_el.jsp").forward(request, response);
- <body>
- susercode: <%=session.getAttribute("usercode") %>
- </body>
- <body>
- <li>普通字符串</li><br>
- hello(jsp脚本):<%=request.getAttribute("hello") %><br>
- hello(el表达式,el表达式使用$和{}):${hello }<br>
- </body>
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="" reloadable="true" />
</Host>
Tomcat的conf\server.xml文件中上面配置 context的reloadable属性的时候,设置了path和docBase,
如果说path是Tomcat的wabapps目录下的项目名称,那么docBase是设置的那个路径呢?
path对应的是我们每次在访问一个网站的时候在浏览器上输入的虚拟目录路径,而服务器上的具体的对应的目录就是docBase。实际上二者是一个映射过程。
- <script type="text/javascript">
- location="/page/frame/main.html"
- </script>
- <servlet>
- <servlet-name>default</servlet-name>
- <servlet-class>org.mortbay.jetty.servlet.DefaultServlet</servlet-class>
- <init-param>
- <param-name>useFileMappedBuffer</param-name>
- <param-value>false</param-value>
- </init-param>
- <load-on-startup>0</load-on-startup>
- </servlet>