javaweb回顾第二篇tomcat和web程序部署
前言这篇主要说下关于tomcat中一些属性和web程序的简单部署,可能在实际开发有更好的部署方式,但是这也是一个基础。
1:tomcat
关于tomcat估计只要接触java的人都听过这个名字,那我们都知道Servlet运行的话需要一个运行环境,也就是我们常说的Servlet容器,那么tomcat就是一个免费开源的Servlet容器。做过.net开发的应该知道IIS,其实tomcat和IIS一样都是具有处理HTMl页面的能力,当然也能处理Servlet和jsp。
下面是一个tomcat服务器接收客户端请求并响应的流程
2:一个简单的小程序
下面是我写的一个简单程序来部署在tomcat
1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 4 <html> 5 <body> 6 <form action="user/login" method="post"> 7 请输入用户名:<input type="text" name="userName" /> 8 <input type="submit" value="提交" /> 9 </form> 10 </body> 11 </html>
1 //核心代码 2 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 3 response.setContentType("text/html;charset=gb2312");//避免中文乱码 4 PrintWriter out=response.getWriter(); 5 String userName=request.getParameter("userName"); 6 out.println("欢迎你:"+userName); 7 }
1 <!DOCTYPE web-app PUBLIC 2 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 3 "http://java.sun.com/dtd/web-app_2_3.dtd" > 4 5 <web-app> 6 <display-name>Archetype Created Web Application</display-name> 7 <servlet> 8 <servlet-name>UserServlet</servlet-name> 9 <description></description> 10 <servlet-class>com.lp.servlet.UserServlet</servlet-class> 11 </servlet> 12 <servlet-mapping> 13 <servlet-name>UserServlet</servlet-name> 14 <url-pattern>/user/login</url-pattern> 15 </servlet-mapping> 16 </web-app>
然后项目打成war包 直接放在tomcat中的webapps下
我们看下tomcat的目录
然后打来bin然后运行startup.bat批处理文件打开http://localhost:8080/web-deploy/index.jsp就会出现我们要的效果
另一种方式部署
在conf\Catalina\localhost新建一个xml文件名字要和你的web程序名保持一致然后然后在加上一个
<Context path="/web-deploy" docBase="C:\91\web-deploy" reloadable="true" />
其中path指定web程序的上下文路径,docBase指定web程序的根目录 reloadable=true 表示会监视classes文件和lib中文件的变化来自动更新,然后再次其中发现效果一样。
当然你可以通过修改server.xml中的port来修改你的端口号
3:总结
这一篇也没什么内容就是帮助自己回忆一下,但是一个web容器是可以有多个web应用程序,但是他们的上下文是唯一的。上下文跟就是你的应用程序名。