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>
index.jsp
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     }
UserServlet
 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>
web.xml

然后项目打成war包 直接放在tomcat中的webapps下

我们看下tomcat的目录

然后打来bin然后运行startup.bat批处理文件打开http://localhost:8080/web-deploy/index.jsp就会出现我们要的效果

另一种方式部署

在confCatalinalocalhost新建一个xml文件名字要和你的web程序名保持一致然后然后在加上一个

<Context path="/web-deploy" docBase="C:91web-deploy" reloadable="true" />

其中path指定web程序的上下文路径,docBase指定web程序的根目录 reloadable=true 表示会监视classes文件和lib中文件的变化来自动更新,然后再次其中发现效果一样。

当然你可以通过修改server.xml中的port来修改你的端口号

3:总结

这一篇也没什么内容就是帮助自己回忆一下,但是一个web容器是可以有多个web应用程序,但是他们的上下文是唯一的。上下文跟就是你的应用程序名。

原文地址:https://www.cnblogs.com/LipeiNet/p/5665359.html