访问:浏览器输入:http://localhost:8080 回车访问本身
http://别人的ip:8080 访问别人php
<Connector port="8888" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8445" />
在<Host>标签体中配置 <Context docBase="D:\hello" path="/hehe" /> <!-- docBase:项目存放的路径 --> <!-- path:虚拟目录 -->
<Context docBase="D:\hello" /> <!-- * 虚拟目录:即为xml文件的名称 -->
Servlet就是一个接口,定义了Java类被浏览器访问到(tomcat识别)的规则。css
配置Servlet
在web.xml中配置:html
<!--配置Servlet --> <servlet> <servlet-name>demo1</servlet-name> <servlet-class>cn.web.servlet.ServletDemo1</servlet-class> </servlet> <servlet-mapping> <servlet-name>demo1</servlet-name> <url-pattern>/demo1</url-pattern> </servlet-mapping>
Servlet中的生命周期方法:java
//注解实现 @Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface WebServlet { String name() default "";//至关于<Servlet-name> String[] value() default {};//表明urlPatterns()属性配置 String[] urlPatterns() default {};//至关于<url-pattern> int loadOnStartup() default -1;//至关于<load-on-startup> WebInitParam[] initParams() default {}; boolean asyncSupported() default false; String smallIcon() default ""; String largeIcon() default ""; String description() default ""; String displayName() default ""; }
//源码 protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String method = req.getMethod(); long lastModified; if (method.equals("GET")) { lastModified = this.getLastModified(req); if (lastModified == -1L) { this.doGet(req, resp); } else { long ifModifiedSince; try { ifModifiedSince = req.getDateHeader("If-Modified-Since"); } catch (IllegalArgumentException var9) { ifModifiedSince = -1L; } if (ifModifiedSince < lastModified / 1000L * 1000L) { this.maybeSetLastModified(resp, lastModified); this.doGet(req, resp); } else { resp.setStatus(304); } } } else if (method.equals("HEAD")) { lastModified = this.getLastModified(req); this.maybeSetLastModified(resp, lastModified); this.doHead(req, resp); } else if (method.equals("POST")) { this.doPost(req, resp); } else if (method.equals("PUT")) { this.doPut(req, resp); } else if (method.equals("DELETE")) { this.doDelete(req, resp); } else if (method.equals("OPTIONS")) { this.doOptions(req, resp); } else if (method.equals("TRACE")) { this.doTrace(req, resp); } else { String errMsg = lStrings.getString("http.method_not_implemented"); Object[] errArgs = new Object[]{method}; errMsg = MessageFormat.format(errMsg, errArgs); resp.sendError(501, errMsg); } }
tomcat真正访问的是“tomcat部署的web项目”,对应着"工做空间项目" 的web目录下的全部资源web
WEB-INF目录下的资源不能被浏览器直接访问。apache